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

Обзор развертывания Quantux на сервере

Предварительные требования

Для корректной работы приложения требуются следующие параметры конфигурации:

Параметр Значение
Операционная система Ubuntu
Внешний порт 443 (HTTPS)
Внутренний порт 8082
Доступ к Docker Требуется установленный Docker и Docker Compose

FDQN итоговой панели на домене hostkey.in

Доменное имя формируется согласно следующему шаблону:

Параметр Значение
Префикс quantux
Домен hostkey.in
Полный шаблон quantux{Server_ID_from_Invapi}.hostkey.in

Структура файлов и каталогов

Основные директории, используемые в системе:

  • /opt/quantux — рабочая директория приложения (содержит quantux-compose.yml).

  • /root/nginx — конфигурация прокси-сервера Nginx.

  • /data/nginx/user_conf.d — пользовательские конфигурации Nginx.

  • /data/nginx/nginx-certbot.env — переменные окружения для Certbot.

  • /opt/quant-ux/data — данные базы данных MongoDB.

  • /opt/quant-ux/quant-ux-data — пользовательские данные приложения (изображения и файлы).

Процесс установки приложения

Развертывание выполняется путем запуска контейнеров через Docker Compose. Приложение состоит из основного программного обеспечения Quantux и прокси-сервера Nginx для управления SSL-сертификатами. Сначала разворачивается инфраструктура приложения в директории /opt/quantux, а затем настраивается обратный прокси nginx-certbot в директории /root/nginx.

Контейнеры Docker и их запуск

Прокси-сервер (Nginx Certbot)

Контейнер отвечает за управление SSL-сертификатами через Let's Encrypt.

  • Имя образа: jonasal/nginx-certbot:latest

  • Сеть: host

  • Тома (volumes):

  • nginx_secrets:/etc/letsencrypt

  • /data/nginx/user_conf.d:/etc/nginx/user_conf.d

  • Переменные окружения: CERTBOT_EMAIL=hkadm@hostkey.com

  • Политика перезапуска: unless-stopped

Основные контейнеры приложения (Quantux)

Имя контейнера Имя образа Порты Тома (volumes) Политика перезапуска
quant-ux-smtp-sink axllent/mailpit always
quant-ux-mongo mongo /opt/quant-ux/data:/data/db always
quantux{Server_ID}.hostkey.in klausenschaefersinho/quant-ux 127.0.0.1:8082:8082 always
quant-ux-backend bmcgonag/qux-be /opt/quant-ux/quant-ux-data:/app-data always
quant-ux-websocket-server klausenschaefersinho/quant-ux-websocket always

Базы данных

В качестве системы управления базами данных используется MongoDB.

  • Имя контейнера: quant-ux-mongo

  • Место хранения данных: /opt/quant-ux/data:/data/db

  • Настройки подключения (в backend): mongodb://quant-ux-mongo:27017, база данных quantux.

Обновление приложения

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

docker compose pull && docker compose up -d

Настройки прав

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

  • /opt/quantux: владелец root, группа root, режим 0750.

  • /opt/quantux/quantux-compose.yml: владелец root, группа root, режим 0640.

  • /root/nginx: владелец root, группа root, режим 0755.

Доступные порты для подключения

Порт Назначение Доступность
443 Веб-интерфейс (HTTPS) Внешний
8082 Внутренний доступ к фронтенду Только локально (127.0.0.1)

Запуск, остановка приложения

Управление контейнерами осуществляется через Docker Compose в директориях /opt/quantux и /root/nginx.

Запуск всех сервисов:

docker compose up -d

Остановка всех сервисов:

docker compose down

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×