Сервер BOOCO Meteor (v 1.x) / Установка без Docker
Установка при помощи установочного скрипта
◼ Пошаговая ручная установка
Ниже приводится описание пошаговой ручной установки на примере ОС Ubuntu 20.04 (для других версий Linux используемые команды могут отличаться).
Порядок установки
Шаг 1. Установка Node JS
- Для установки Node JS выполните следующие команды:
- Проверьте, что Node JS установлен:
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash - \
sudo apt-get install -y nodejs
node -v
Шаг 2. Установка и запуск MongoDB
- Установите MongoDB.
- Запустите MongoDB. Для автоматического запуска MongoDB при старте выполните следующие команды:
- Запустите консоль Mongo:
- Введите команду (замените
password
на надежный пароль): - Включите авторизацию в конфигурационном файле
mongod.conf
. Запустите редактор: - Затем перезапустите сервис Mongo:
grep avx /proc/cpuinfot
. Если результаты выполнения команды отсутствуют, то это означает, что процессор не поддерживает расширенный набор команд AVX. Подробнее о системе команд AVXЧтобы установить MongoDB, выполните следующие команды:
export MONGO_PGP="https://www.mongodb.org/static/pgp/server-5.0.asc"
export MONGO_REPO="https://repo.mongodb.org/apt/ubuntu"
export MONGO_VER="bionic/mongodb-org/5.0"
export MONGO_LIST="/etc/apt/sources.list.d/mongodb-org-5.0.list"
curl -fsSL $MONGO_PGP | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] $MONGO_REPO $MONGO_VER multiverse" \
| sudo tee $MONGO_LIST
sudo apt-get update
sudo apt-get install -y mongodb-org
apt-get update
появилась ошибка 403 Forbidden, то следует воспользоваться альтернативным способом установки.Альтернативный способ установки:
sudo rm /etc/apt/sources.list.d/mongodb-org*
export BOOCO_MONGO="https://www.booco.ru/download/mongo"
export MONGODB_DIST_SERVER="mongodb-linux-x86_64-ubuntu2004-5.0.9"
curl $BOOCO_MONGO/$MONGODB_DIST_SERVER.tgz -o /tmp/mongodb.tgz
tar -zxvf /tmp/mongodb.tgz -C /tmp/
sudo mv /tmp/$MONGODB_DIST_SERVER/bin/mongo* /usr/bin
sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
# create db group and user
sudo adduser --system --no-create-home \
--disabled-login --group mongodb
sudo chown -R mongodb:mongodb /var/lib/mongo
sudo chown -R mongodb:mongodb /var/log/mongodb
# get Mongo configuration file
sudo curl https://www.booco.ru/download/mongo/mongod.conf \
-o /etc/mongod.conf
# get systemd service file
sudo curl https://www.booco.ru/download/mongo/mongod.service \
-o /lib/systemd/system/mongod.service
sudo systemctl daemon-reload
sudo systemctl unmask mongod
sudo systemctl enable mongod
sudo systemctl start mongod
Рекомендуем убедиться, что сервис Mongo DB запущен:
sudo systemctl status mongo
mongo admin # должна появиться командная строка **>**
db.createUser({user: "admin", pwd: "password", roles: [{ role: "root", db: "admin" }]})
Появится надпись Successfully added user:...
.
Для выхода из консоли Mongo введите команду exit.
sudo nano /etc/mongod.conf
Добавьте в конце следующие строчки:
security:
authorization : enabled
CTRL+O
и ENTER
. Для выхода нажмите CTRL+X
.sudo systemctl restart mongod
Шаг 3. Установка BOOCO
- Получите последнюю версию BOOCO. Для этого выполните следующее:
- Выполните команды:
export BOOCO_VER=$(curl -fsSL https://www.booco.ru/download/latest)
echo "Version: $BOOCO_VER"
В результате отобразится информация с номером версии (например: Version 1.26.11
).
curl https://www.booco.ru/download/booco_$BOOCO_VER.tar.gz \
-o /tmp/booco.tar.gz
sudo tar -xf /tmp/booco.tar.gz -C /opt
Шаг 4. Создание начальной конфигурации и запуск сервера
- Подготовьте начальные папки и конфигурационные файлы:
- Создайте файл
.env
с переменными среды: - Запустите сервер.
- Добавьте сервер BOOCO в
Systemd
для автоматического запуска: - Проверьте, что BOOCO запущен:
- Проверьте логи:
- Смените пользователя на пользователя
root
: - Затем выполните следующие команды:
- В конце вернитесь к текущему пользователю, для этого введите команду
exit
.
export BOOCO_DATA=/var/booco
export BOOCO_DEFAULT=/opt/booco/default-configs
sudo mkdir -p $BOOCO_DATA/config
sudo mkdir -p $BOOCO_DATA/debug
sudo mkdir -p $BOOCO_DATA/scripts/templates
sudo cp $BOOCO_DEFAULT/default-config.yml $BOOCO_DATA/config/booco.yml
sudo cp $BOOCO_DEFAULT/default-debug.yml $BOOCO_DATA/debug/debug.yml
sudo cp $BOOCO_DEFAULT/default.js $BOOCO_DATA/scripts/templates
export BOOCO_ENV=/opt/booco/.env
export MONGO_USER=admin
export MONGO_PASSWORD=password # change password!
export MONGO_BASE=127.0.0.1:27017/meteor?authSource=admin
export MONGO_URL=mongodb://$MONGO_USER:$MONGO_PASSWORD@$MONGO_BASE
echo MONGO_USER=$MONGO_USER > /tmp/booco.env
echo MONGO_PASSWORD=$MONGO_PASSWORD >> /tmp/booco.env
echo BOOCO_DATA=$BOOCO_DATA >> /tmp/booco.env
echo MONGO_URL=$MONGO_URL >> /tmp/booco.env
echo UNIVERSE_I18N_LOCALES="en, ru" >> /tmp/booco.env
echo LANG=ru_RU >> /tmp/booco.env
echo NODE_ENV=production >> /tmp/booco.env
sudo mv /tmp/booco.env $BOOCO_ENV
Порядок автоматического запуска
sudo curl https://www.booco.ru/install/booco.service \
-o /lib/systemd/system/booco.service
sudo systemctl daemon-reload
sudo systemctl unmask booco
sudo systemctl enable booco
sudo systemctl start booco
sudo systemctl status booco
tail /var/log/booco.log
или
tail /var/log/booco.log -f` # для постоянного отслеживания
systemctl
, то можно выполнить запуск вручную.Запуск вручную
Для запуска BOOCO не в фоновом режиме выполните следующее:
cd /opt/booco
source .env
export ROOT_URL=${ROOT_URL:=http://$(hostname -I)}
sudo ROOT_URL=$ROOT_URL \
PORT=80 \
MONGO_URL=$MONGO_URL \
UNIVERSE_I18N_LOCALES="$UNIVERSE_I18N_LOCALES" \
LANG="$LANG" \
NODE_ENV=production \
BOOCO_DATA=$BOOCO_DATA \
node main.js
Чтобы завершить работу, нажмите CTRL+C
.
Для запуска BOOCO в фоновом режиме с перенаправлением в log
выполните следующее:
sudo su
cd /opt/booco
source .env
sudo touch /var/log/booco.log
sudo chmod 755 /var/log/booco.log
export ROOT_URL=${ROOT_URL:=http://$(hostname -I)}
sudo ROOT_URL=$ROOT_URL \
PORT=80 \
MONGO_URL=$MONGO_URL \
UNIVERSE_I18N_LOCALES="$UNIVERSE_I18N_LOCALES" \
LANG="$LANG" \
NODE_ENV=production \
BOOCO_DATA=$BOOCO_DATA \
nohup node main.js &>>/var/log/booco.log < /dev/null &
Удаление временных файлов
После завершения установки BOOCO необходимо удалить временные файлы:
rm -f /tmp/mongodb.tgz
rm -rf /tmp/mongodb-linux*
rm -f /tmp/booco.tar.gz
rm -rf /tmp/booco*