Автономная установка DCC

Установка Docker на Astra Linux

Установите Docker Engine согласно инструкции.

Загрузка проекта

Скачайте архив DCC с образами продукта:

https://storage.yandexcloud.net/zip-products/DCC-container.zip

После загрузки перенесите архив на целевой сервер. Например:

scp путь/к/DCC-container.zip username@ip-сервера:/путь/к/директории

Распаковка архива

Перейдите в директорию, в которую был скопирован архив, и распакуйте его:

unzip DCC-container.zip

После распаковки будут получены архивы Docker-образов (*.tar).

Загрузите каждый образ в локальный Docker:

docker load < /путь/к/образу.tar

Повторите команду для всех файлов образов.

Настройка файла .env

Откройте файл .env и при необходимости измените параметры:

# ==== GATEWAY SETTINGS ==== GATEWAY_WORKERS=5 GATEWAY_ROOT_PATH=/api GATEWAY_SWAGGER_PATH=/docs GATEWAY_OPENAPI_PATH=/openapi.json # ==== ADMIN CREDENTIALS ==== ADMIN_USERNAME=admin ADMIN_PASSWORD=admin_pass # ==== MIGRATIONS & GATEWAY ==== FERNET_KEY=A8wEmHK6zI3qBW0YKugph6q6t7yDUVlI1-uCEsdKJfs= # ==== VOLUME PATHS (опционально переопределяемые) ==== PG_DATA_VOLUME_PATH=./data/pgdata

Ниже в таблице описаны параметры, которые можно изменить:

Параметр

Описание

GATEWAY_ROOT_PATH

базовый путь API. Обычно используется значение /api.

GATEWAY_SWAGGER_PATH

путь к Swagger UI. Если Swagger не требуется, можно указать none.

GATEWAY_OPENAPI_PATH

путь к OpenAPI-спецификации. Если OpenAPI не требуется, можно указать none.

FERNET_KEY

ключ шифрования паролей, хранящихся в базе данных. Рекомендуется заменить на собственный.

Пример генерации:

openssl rand -base64 32 | tr +/ -_

PG_DATA_VOLUME_PATH

каталог хранения данных PostgreSQL. По умолчанию используется ./data/pgdata.

ADMIN_USERNAME

имя администратора. Рекомендуется изменить.

ADMIN_PASSWORD

пароль администратора. Рекомендуется изменить.

Настройка порта (при необходимости)

По умолчанию API доступен на порту 8000.

Чтобы использовать другой порт, измените параметр:

GATEWAY_EXTERNAL_PORT=80

Настройка количества воркеров

По умолчанию сервис запускается с 5 воркерами:

GATEWAY_WORKERS=5

Если сервер располагает достаточными ресурсами, количество воркеров можно увеличить.

Расчет рекомендуемого количества воркеров

Для расчета подходящего в Вашем случае количества воркеров используйте формулу:

Количество воркеров = (2 × количество ядер CPU) + 1

Это рекомендация, основанная на документации Gunicorn.

Количество ядер можно проверить с помощью команды: nproc

Пример расчета количества воркеров

Если сервер имеет 4 процессорных ядра:

2 × 4 + 1 = 9

Тогда рекомендуется указать:

GATEWAY_WORKERS=9

Запуск сервиса

Запустите сервис командой:

docker compose up -d

Docker создаст необходимые контейнеры и запустит их в фоновом режиме.

Использование внешнего PostgreSQL

Если планируется использовать уже существующий сервер PostgreSQL, измените параметры подключения в файле .env:

# ==== PostgreSQL connection settings ==== POSTGRES_USER=postgres POSTGRES_PASSWORD=postgres POSTGRES_DB=DCC POSTGRES_HOST=postgres POSTGRES_PORT=5432

После этого запустите только API-сервис:

docker compose up -d dcc-api

Доступ после запуска

После успешного запуска будут доступны:

  • Веб-интерфейс: http://<IP-адрес-хоста>:8000

  • Учетные данные по умолчанию

    • Логин: admin

    • Пароль: admin_pass