Перейти к содержанию

Ручная установка

Разворачивание системы состоит из нескольких шагов. Для удобства проверки выполнения они пронумерованы. Последовательно выполните все шаги.

1. Подготовка окружения

Для работы и запуска системы необходим Docker контейнер, в который будет загружен образ со всеми необходимыми зависимостями. Поэтому первым делом на виртуальную машину необходимо установить пакеты docker и docker-compose, а также unzip:

sudo apt -y update && apt install docker.io docker-compose unzip

2. Загрузка образа

Далее необходимо создать каталог /opt/pro32connect, в который будет загружен и распакован образ системы. Выполните следующие команды:

sudo docker login updater.pro32connect.ru:5000

Авторизация

При запросе username и password укажите данные полученные при покупке лицензии.

sudo mkdir -p /opt/pro32connect
sudo chown $USER /opt/pro32connect
cd /opt/pro32connect
wget --user=<login> --ask-password https://updater.pro32connect.ru:5000/install/pro32connect.zip
unzip pro32connect.zip

Авторизация

Вместо <login> укажите предоставленный логин при покупке лицензии. При запросе password при выполнении команды wget укажите пароль полученные при покупке лицензии.

3. Получение сертификата

В стандартную поставку системы включен само-подписанный SSL сертификат. Он находится в следующих файлах:

Путь Описание
/opt/pro32connect/cert/server.crt файл в формате PEM с сертификатом (или цепочкой сертификатов)
/opt/pro32connect/cert/server.key файл в формате PEM с приватным ключом

Для того, чтобы браузеры не выдавали предупреждений о небезопасном соединении, необходимо получить полноценный сертификат. Его можно приобрести в удостоверяющих центрах, либо выделить бесплатно в центе Let's Encrypt .

3.1 Получение сертификата Let's Encrypt

Выполните следующие команды, заменив <hostname> на ваше доменное имя. Во время выполнения следуйте инструкциям, которые выдаст система. Потребуется доступ к DNS-серверу вашего домена.

sudo apt -y install certbot
sudo certbot certonly --standalone -d <hostname>

После выполнения всех действий файлы полученного сертификата будут лежать в следующих каталогах:

Путь Описание
/etc/letsencrypt/live/<hostname>/fullchain.pem сертификат с полной цепочкой сертификатов
/etc/letsencrypt/live/<hostname>/privkey.pem приватный ключ

Скопируйте эти файлы в каталог /opt/pro32connect/cert/ выполнив следующие команды:

sudo cp --copy-contents /etc/letsencrypt/live/<hostname>/fullchain.pem /opt/pro32connect/cert/server.crt
sudo cp --copy-contents /etc/letsencrypt/live/<hostname>/privkey.pem /opt/pro32connect/cert/server.key

4. Настройка конфигов

4.1 Пароль к базе

Придумайте и укажите свой пароль к базе данных в файлах docker-compose.yml, server/config.json, download/config.json и download/config.json.

Генератор случайных строк

Для генерации пароля вы можете воспользоваться онлайн-генератором .

Нужно заменить строку changeme-sql-pass на ваш пароль.

В файле docker-compose.yml:

#########################################################
# Database server
#########################################################

db:
image: docker.io/postgres:14
container_name: pro32connect-db
restart: always
environment:
    - POSTGRES_DB=pro32connect
    - POSTGRES_USER=pro32connect
    - POSTGRES_PASSWORD=changeme-sql-pass
volumes:
    - ./db/data:/var/lib/postgresql/data
ports:
    - 127.0.0.1:5000:5432

В файле server/config.json:

    "sql": {
      "server": "127.0.0.1",
      "port": 5000,
      "user": "pro32connect",
      "password": "changeme-sql-pass",
      "log": false
    },

В файле download/config.json:

    "sql": {
        "db": "pro32connect",
        "host": "127.0.0.1",
        "user": "pro32connect",
        "port": 5000,
        "ssl": false,
        "password": "changeme-sql-pass"
    },

4.2 IP-адрес

Замените в файле server/config.json все строки с IP-адресами 11.22.33.44 на <your-ip>, где:

  • <your-ip> - публичный IP адрес вашего сервера.

4.3 Доменное имя

Замените все строки pro32connect.test на <your-domain>, где <your-domain> - ваше доменное имя в следующих файлах:

  • server/config.json
  • download/config.json
  • storage/config.json

4.4 SMTP-сервер

Укажите настройки вашего почтового сервера в секции mail:

    "mail": {
        "user": "robot@pro32connect.test",
        "password": "changeme-mail-password",
        "server": "smtp.mailserver.com",
        "port": 465,
        "email": "robot@pro32connect.test"
    },

4.5. Токены и ключи для компонентов

Чтобы подружить все компоненты системы между собой и с главным сервером необходимо в их конфигах прописать соответсвующие ключи и токены. Для удобства замены все ключи собраны в таблице ниже. Вам нужно в соответсвующих файлах заменить идентификатор ключа на значение со случайным набором символов заданной длины.

Идентификатор Длина символов Файлы
changeme-server-token-48-characters 48 /server/config.json
/download/config.json
changeme-download-token-48-characters 48 /server/config.json
/download/config.json
changeme-turn-pass-16-characters 16 /server/config.json
/proxy/config.json
changeme-storage-key-32-characters 32 /server/config.json
/storage/config.json
changeme-storage-token-48-characters 48 /server/config.json
/storage/config.json
changeme-image-key-32-characters 32 /server/config.json
/storage/image.json
changeme-image-token-48-characters 48 /server/config.json
/storage/image.json

Генератор случайных строк

Для генерации ключей вы можете воспользоваться онлайн-генератором .

5. Запуск системы

Для запуска системы выполните следующие команды:

cd /opt/pro32connect
sudo docker-compose up -d

6. Проверка ошибок

Проверьте логи главного сервера и компонентов на наличие ошибок. Файлы логов хранятся по следующими путям:

/opt/pro32connect/server/log/*.log
/opt/pro32connect/download/log/*.log
/opt/pro32connect/image/log/*.log
/opt/pro32connect/proxy/log/*.log
/opt/pro32connect/storage/log/*.log

Если есть ошибки, они подскажут вам порядок действий для их устранения.

7. Проверка доступности веб-сервера

Откройте браузер и перейдите по адресу https://<your-ip>, где:

  • <your-ip> - это публичный IP-адрсе сервера

Должна открываться страница активации лицензии.

8. Активация лицензии

После запуска системы главный веб-сервер будет отдавать страницу для активации лицензии. Введите ключ лицензии, который входит в поставку систему и выбранное вами доменное имя для сервера - то, для которого вы выделяли сертификат в пункте 3.

После проверки ключа система самостоятельно положит файл лицензии по пути /opt/pro32connect/server/license.lic и предложит перезапустить сервер. Для рестарта выполните команду:

sudo docker container restart pro32connect-server

После перезапуска ваша лицензия будет активирована и веб-сервер будет отдавать страницу по домену для входа в систему.

Учетная запись администратора по умолчанию:

login: administrator
password: PRO32Connect

Обязательно поменяйте пароль учетной записи администратора!

Вы можете сделать это на странице настроек во вкладке профиля.


Последнее обновление: 16 ноября 2023 г.