Установка на Альт Линукс
Содержание комплекта поставки
- orgnavigator.zip — Архив с приложением
Предполагаем, что все действия будут выполняться от пользователя root.
Тестирование производилось на Альт Сервер 10. В версии 11 должно работать аналогично. Возможно, со временем появится новая версия PostgreSQL.
Установка дополнительных утилит
Установим утилиты, которые будем использовать на этапе установки. Можете их не устанавливать, но придётся самостоятельно искать замену. Порядок действий и содержание шагов от этого не изменится.
apt-get update
apt-get install wget nano
Установка Node.js
Скачиваем бинарные файлы Node.js версии 20.9 или выше.
Взять можно на официальном сайте здесь: https://nodejs.org/en/download. Кнопка Standalone Binary (.xz).
Пример команд:
wget https://nodejs.org/dist/v24.16.0/node-v24.16.0-linux-x64.tar.xz
mkdir -p /opt/node/
tar -xf node-v24.16.0-linux-x64.tar.xz -C /opt/node/
Распаковка архива
Распакуйте архив orgnavigator.zip в каталог, в котором будут храниться данные приложения.
unzip orgnavigator.zip -d /opt/
Создание пользователя
Создайте пользователя для работы службы и назначьте его владельцев каталога с приложением:
useradd -r -s /usr/sbin/nologin -d /opt/orgnavigator orgnavigator
chown -R orgnavigator:orgnavigator /opt/orgnavigator
Подготовка СУБД
Установка PostgreSQL
Если уже есть, можно пропустить.
apt-get install postgresql17 postgresql17-server
/etc/init.d/postgresql initdb
systemctl enable --now postgresql.service
Создание пользователя в PostgreSQL
Создайте пользователя для работы с базой данных. Например, так:
psql -U postgres -c "CREATE USER orgnavigator WITH LOGIN PASSWORD 'wc2jO2E5TWLGuOPPk1OcTq' CREATEDB;"
Создание базы данных
Создайте базу данных и назначьте владельцем созданного пользователя. Например, так:
psql -U postgres -c "CREATE DATABASE orgnavigator OWNER orgnavigator;"
Создание структуры базы данных
Подключитесь к базе данных от имени созданного пользователя и выполните скрипт из файла init.sql для создания структуры.
Пример для создания пустой БД:
psql -U orgnavigator -d orgnavigator -f /opt/orgnavigator/init.sql
Пример для создания БД с тестовыми данными:
psql -U orgnavigator -d orgnavigator -f /opt/orgnavigator/example.sql
Настройка приложения
В каталоге с приложением в файле .env.production измените параметры подключения к БД и ключ для шифрования сессий пользователей JWT_SECRET.
Создание службы
Создайте файл /etc/systemd/system/orgnavigator.service с описанием службы. Пример ниже. Возможно, потребуется исправить пути к nodejs.
[Unit]
Description=OrgNavigator Node.js Application
Documentation=https://orgnavigator.ru/docs
#After=network.target postgresql.service
#Wants=postgresql.service
[Service]
Type=simple
User=orgnavigator
Group=orgnavigator
WorkingDirectory=/opt/orgnavigator
ExecStart=/opt/node/node-v24.16.0-linux-x64/bin/node /opt/orgnavigator/server.js
Restart=on-failure
RestartSec=10
StandardOutput=journal
StandardError=journal
Environment=NODE_ENV=production
Environment=PORT=3001
[Install]
WantedBy=multi-user.target
Обновите данные служб и добавьте Оргнавигатор в автозапуск:
systemctl daemon-reload
systemctl enable --now orgnavigator
Доступ к приложению
После запуска сервера приложение будет доступно по адресу:
Начало работы
Первые шаги описаны в отдельной статье.