1. Параметры сервера (VDS):
| Минимальные | Рекомендуемые |
OS | Linux | Debian 9 or 10 |
CPU | x2 (KVM) | x4 (KVM) |
Memory | 2 GB | 4 GB |
Disk | 10 GB | 40 GB (SSD) |
Аренда сервера
Вы можете арендовать сервер в любой компании, которой вы доверяете свои данные подобрать VDS по параметрам, которые указаны ниже.
Также мы подобрали список серверов на которых работают наши клиенты:
2. Подготовка окружения
После установки сервера к нему необходимо подключится по SSH и настроить окружение
Установить пакеты сервера (nano git curl)
apt-get install -y curl git nano
Установить NodeJS
Установить NVM:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash
Добавить путь nvm:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
Установить NodeJS and NPM:
nvm install 12
Установить MongoDB
Документация от mongodb.com
Официальные документы
Инструкция только debian 10 використовуйте оффициальную документацию, если у вас другая версия системы Добавление ключей:
sudo apt-get install -y gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main" | sudo tee
/etc/apt/sources.list.d/mongodb-org-4.4.list
sudo apt-get update
Установка:
sudo apt-get install -y mongodb-org
Запуск и добавление в автозапуск:
sudo systemctl start mongod
sudo systemctl daemon-reload
sudo systemctl enable mongod
Создание базы данных и пароля:
mongo
ВАЖНО! В коде ниже есть переменные их нужно придумать свои (ADMIN_NAME, ADMIN_PASSWORD, DB_NAME, USER_NAME, YOUR_PASSWORD, DB_NAME) данные данные не следует некому розглашать это доступы от ваших баз данных розгласив их или установив команду без изменений вы рискуете быть взломаными! use admin;
db.createUser({
user: "ADMIN_NAME",
pwd: "ADMIN_PASSWORD",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
});
use DB_NAME;
db.createUser({
user: "USER_NAME",
pwd: "YOUR_PASSWORD",
roles: [ { role: "readWrite", db: "DB_NAME" } ]
});
exit
Активация авторизации
nano /etc/mongod.conf
security:
authorization: "enabled"
Установить Redis
apt-get install -y redis-server
Установить Nginx
apt-get install -y nginx
Установить пакеты g ++ build-essential imagemagick graphicsmagick
apt-get install -y g++ build-essential imagemagick graphicsmagick
Установить PM2
npm i -g pm2
3.Скачивание ПО на сервер
Создаем SSH-ключ
Документация с github.com
Создание нового ключа SSH
Учебник по Linux
ssh-keygen -t rsa -b 4096
> Enter x3
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
Получить свой ключ:
cat ~/.ssh/id_rsa.pub
Скопируйте результат и установите данный ключ в своем юзер кабинете или отправте его нам на почту support@boxexchanger.net с помощью почты, которую вы указывали при покупке ПО
Клонируем репозитории
cd /var/www
NAME_PROJECT - вы можете узнать в вашем личном кабинете как и полностю ссылку на клонирование репозиториев или обратитесь в службу поддержки.
git clone git@gitlab.com:NAME_PROJECT/exchanger-api.git
git clone git@gitlab.com:NAME_PROJECT/exchanger-client-web.git
git clone git@gitlab.com:NAME_PROJECT/exchanger-admin-web.git
4. Конфигурирование и запуск Rest-API
cd /var/www/exchanger-api/
npm i
npm run configure
npm run dev # after 10 sec CTRL + C (2 times)
настроить доступ к базе данных "mongodb": { "uri":
"mongodb://USER_NAME:YOUR_PASSWORD@localhost:27017/DB_NAME" ...
nano config/app_config.json
настроить конфигурацию api "shema" = https, your domain your project name, "server_path":
"/service/",
etc...
nano config/api_config.json
настроить конфигурацию api
npm run seed
Найдите строчку !! SAVE !!!, *****@admin.ex ***** Сохраните данные это ваш логин и пароль от админ панели!
npm run migrate
npm run build-api
npm run start
Проверить api::
curl http://localhost:3010
ответ должен содержать::
this is "service path" for project ...
5. Настройка конфигурации Nginx
Войдите в свой аккаунт на свою лицензию вы попадете в меню настроек в правом углу будет кнопка скачать nginx конфигурацию скачайте ее и перенесите ее на сервере а папку/etc/nginx/sites-enabled/
6. Сборка админ панели
cd /var/www/exchanger-admin-web/
npm i
npm run configure
Сконфигурируйте конфигурацию: (при возникновении затруднений обратитесь в тех поддержку support@boxexchanger.net)
nano config/app.json
Сборка проекта:
npm run generate
последная строка должна быть ✔ Client-side fallback created: 200.html
это значит что админ панель собрана успешно
7. Сборка веб-панели
cd /var/www/exchanger-client-web/
npm i
npm run configure
Сконфигурируйте конфигурацию: (при возникновении затруднений обратитесь в тех поддержку support@boxexchanger.net)
nano config/app.json
Сборка проекта:
npm run generate
последная строка должна быть ✔ Client-side fallback created: 200.html
это значит что веб панель собрана успешно
PS: Как обновить ПО BoxExchanger вы можете найти на старанице
Обновление ПО BoxExchanger