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

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

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

Для успешного развертывания приложения необходимо наличие следующих условий:

  • Операционная система: Ubuntu.

  • Права доступа: доступ к пользователю root или с правами sudo.

  • Домен: зона hostkey.in.

  • Установленный пакет wget для загрузки установщика.

FQDN итоговой панели

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

  • Домен: brainycp<ID сервера>.hostkey.in.

  • Порт: 443 (HTTPS).

  • Внутренний порт приложения: 8000.

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

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

  • Каталог установки приложения: /usr/local/brainycp.

  • Скрипт установщика: /root/install.sh.

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

  • Файл конфигурации Docker Compose: /root/nginx/compose.yml.

  • Конфигурация пользователя Nginx: /data/nginx/user_conf.d/brainycp<ID сервера>.hostkey.in.conf.

  • Переменные окружения для Nginx: /data/nginx/nginx-certbot.env.

  • Хранилище секретов Let's Encrypt: /etc/letsencrypt (подключено через том nginx_secrets).

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

Установка производится с использованием официального скрипта от разработчика:

  1. Проверяется наличие директории /usr/local/brainycp. Если она отсутствует, запускается процесс установки.

  2. Устанавливается пакет wget через менеджер пакетов apt.

  3. Скрипт установщика скачивается с адреса http://core.brainycp.com/install.sh в путь /root/install.sh.

  4. Запускается скрипт установки в режиме автоматического подтверждения всех запросов командой yes | bash ./install.sh.

  5. После успешной установки сервер автоматически перезагружается.

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

Для работы прокси-сервера и управления сертификатами используется контейнер Docker:

  • Образ: jonasal/nginx-certbot:latest.

  • Режим сети: host.

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

  • Том для хранения секретов: nginx_secrets (подключен к /etc/letsencrypt).

  • Том для пользовательских конфигов: /data/nginx/user_conf.d (подключен к /etc/nginx/user_conf.d).

Запуск контейнера осуществляется через команду docker compose up -d в директории /root/nginx.

Прокси серверы

В качестве прокси-сервера используется Nginx в контейнере Docker с поддержкой Certbot:

  • Домен: brainycp<ID сервера>.hostkey.in.

  • Входящий порт: 443.

  • Внутренний путь: /.

  • Адрес проксирования: http://127.0.0.1:8002.

  • Email для сертификатов: hkadm@hostkey.com.

  • Конфигурация проксирования добавляется в файл /data/nginx/user_conf.d/brainycp<ID сервера>.hostkey.in.conf в блок location /.

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

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

  • Директория /root/nginx: владелец root, группа root, права 0755.

  • Файл /root/nginx/compose.yml: владелец root, группа root, права 0644.

  • Скрипт /root/install.sh: права 0700.

Расположение конфигурационных файлов и данных

Основные конфигурационные файлы находятся в следующих местах:

  • /root/nginx/compose.yml — описание сервиса Docker.

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

  • /data/nginx/user_conf.d/brainycp<ID сервера>.hostkey.in.conf — конфигурация виртуального хоста.

  • /etc/letsencrypt — сертификаты SSL (через том Docker).

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

Следующие порты используются для работы приложения:

  • Порт 443 (HTTPS) — внешний доступ к панели управления.

  • Порт 8000 — внутренний порт приложения BrainyCP.

  • Порт 8002 — порт, используемый прокси-сервером для пересылки запросов.

Запуск, остановка и обновление

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

  • Запуск: docker compose up -d.

  • Остановка: docker compose down.

  • Обновление: docker compose pull и docker compose up -d.

Для обновления самого приложения BrainyCP необходимо повторить процесс установки через скрипт /root/install.sh, если это требуется разработчиком.

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