Запуск сервиса на площадке клиента

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

  1. Сервер для установки

    1. Доступ по SSH

    2. Установлены docker и docker-compose-plugin

  2. В Yandex Cloud создан сервисный аккаунт для клиента

    1. Выданы права на скачивание docker images

    2. Сгенерирован json ключ

Развертывание

  1. Выполнить логин в docker registry cat key.json | docker login --username json_key --password-stdin cr.yandex, где key.json - ключ сервисного аккаунта из пункта 2.2 в первоначальный требованиях

  2. Поместить файл docker-compose.customers.yml в папку /opt/visaver/vi_client

    • При необходимости поправить тег контейнера. Возможные значения:

      • имя ветки - будет использована самая последняя сборка для данной ветки

      • hash коммита

  3. В папке /opt/visaver/vi_client создать файл .env, в котором указать переменные:

    Обязательные переменные:

    • API_KEY - API ключ для взаимодействия с внешним сервисом обработки (vi_server)

    • API_URL - URL внешнего сервиса обработки (https://api.visaver.com)

    • ADMIN_USERNAME - Логин для доступа к админ панели

    • ADMIN_PASSWORD - Пароль для доступа к админ панели

    • SECRET_KEY - Секретный ключ для шифрования сессий (случайная строка длиной 32+ символа)

    • GITHUB_SHA - Тег Docker образа для worker'ов (например: main или хеш коммита)

    Пример .env файла:

    # Обязательные переменные
    API_KEY=your-api-key-from-visaver
    API_URL=https://api.visaver.com
    ADMIN_USERNAME=admin
    ADMIN_PASSWORD=YourSecurePassword123
    SECRET_KEY=your-very-long-random-secret-key-string-32-chars-min
    FRAMER_HOST=http://your-domain:${PUBLIC_PORT}
    PUBLIC_PORT=8080

    Примечания:

    • База данных и RabbitMQ используют встроенные учетные данные и не требуют настройки

    • Сервис будет доступен на порту 80 (HTTP)

    • База данных PostgreSQL доступна локально на порту 5432

    • RabbitMQ Management доступен локально на порту 15672

  4. В папке /opt/visaver/vi_client выполнить команду docker compose -f docker-compose.customers.yml up --wait --no-build

Обновление

  1. Выполнить логин в docker registry cat key.json | docker login --username json_key --password-stdin cr.yandex, где key.json - ключ сервисного аккаунта из пункта 2.2 в первоначальный требованиях

  2. При необходимости поправить тег контейнера. Возможные значения:

    • имя ветки - будет использована самая последняя сборка для данной ветки

    • hash коммита

  3. В папке /opt/visaver/vi_client выполнить команду docker compose -f docker-compose.customers.yml pull && docker compose -f docker-compose.customers.yml up --wait --no-build

Last updated