Перейти к основному содержимому
Версия: 1.7

Установка с помощью Docker Compose

Установка с помощью Docker Compose подходит для развертывания TRON.ASOC на одном сервере. Для развертывания в кластере Kubernetes см. раздел Установка с помощью Helm Chart.

Перед началом работы​

Для установки TRON.ASOC с помощью Docker Compose потребуются:

  • учетные данные для доступа к реестру pcr.tronasoc.ru;
  • архив asoc-v1.7-docker-compose.zip с конфигурационными файлами;
  • доменное имя для веб-интерфейса TRON.ASOC — зарезервируйте его в вашей инфраструктуре заранее.

Учетные данные и архив запросите в службе поддержки: support@tronasoc.ru.

Порядок действий​

Установка TRON.ASOC с помощью Docker Compose включает следующие этапы:

  1. Настройка окружения.
  2. Запуск.
  3. Проверка работоспособности.

Настройка окружения​

Чтобы настроить окружение, выполните следующие шаги:

  1. Распакуйте архив с конфигурационными файлами:

    unzip asoc-v1.7-docker-compose.zip
    cd asoc-v1.7-docker-compose
  2. В файле .env задайте значение переменной ASOC_DOMAIN.

    К сведению

    Значение переменной ASOC_DOMAIN — доменное имя, по которому будет доступен веб-интерфейс TRON.ASOC.

  3. Если DNS-сервер не настроен, добавьте в локальный файл hosts следующую запись:

    echo "127.0.0.1 asoc.example.com" | sudo tee -a /etc/hosts
    Внимание

    Для пилотных проектов с доступом из сети создайте на DNS-сервере A-запись, указывающую на IP-адрес сервера с Docker Compose.

  4. Укажите S3-хранилище для хранения отчетов и результатов сканирования в конфигурационном файле .env:

    • при выборе хранилища MinIO (по умолчанию):

      COMPOSE_PROFILES=minio
      ASOC_MINIO_HOST=minio
    • при выборе хранилища SeaweedFS:

      COMPOSE_PROFILES=seaweedfs
      ASOC_MINIO_HOST=seaweedfs
    Внимание

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

  5. Если для хранения данных выбрано MinIO, подготовьте директорию для хранения данных:

    sudo mkdir -p /mnt/minio-data
    sudo chown -R 2222:2222 /mnt/minio-data
    sudo chmod -R 755 /mnt/minio-data
    К сведению

    Для SeaweedFS отдельная директория не требуется, так как используется том seaweedfs-data.

  6. Убедитесь, что в конфигурационном файле установлены следующие версии образов:

    • front/core/reporter — v1.7;
    • nginx (reverse-proxy) — v1.6;
    • fp — v1.7 (по умолчанию отключен).
    К сведению

    Версии образов при необходимости обновляются через соответствующую переменную ASOC_IMG_*.

  7. При необходимости проверьте конфигурацию, запустив скрипт show.sh:

    ./show.sh

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

  8. Авторизуйтесь в реестре контейнеров:

    docker login pcr.tronasoc.ru
  9. Если необходим сервис AI False-Positive (AI FP), задайте значение true для переменной ASOC_COPILOT_ENABLED.

    К сведению

    В TRON.ASOC версии 1.7 этот сервис по умолчанию отключен (ASOC_COPILOT_ENABLED=false). Подробнее о сервисе AI FP см. раздел О сервисе AI False-Positive (AI FP).

Запуск​

Чтобы запустить TRON.ASOC, выполните следующие шаги:

  1. Запустите контейнеры:

    docker compose up -d
  2. Дождитесь запуска всех сервисов (обычно 1–2 минуты) и проверьте их статус:

    docker ps

    Результат шага: контейнеры имеют статус Running или аналогичный (Up, healthy).

Проверка работоспособности​

Чтобы проверить работоспособность TRON.ASOC, выполните следующие шаги:

  1. Откройте в браузере адрес http://<домен> (например, http://asoc.example.com).
  2. Дождитесь загрузки страницы авторизации.
  3. Войдите с учетными данными admin/admin.
  4. При первом входе примите условия лицензионного соглашения (EULA).
Внимание

Учетные данные admin/admin предназначены только для первого запуска, поэтому сразу после первого входа смените логин и пароль администратора.

Убедитесь, что страница авторизации TRON.ASOC открылась и вход выполнен.