Перейти к основному содержимому

Установка ТестОпс версии 4.x в Docker Compose

Внимание

В разделе описана установка ТестОпс версии 4.x. Чтобы установить ТестОпс версии 5.x, воспользуйтесь инструкцией.

Этот вариант установки является самым простым, но в то же время одним из самых ненадежных и подходит для небольших команд с относительно небольшой нагрузкой (не более 5000 результатов автотестов в сутки). При возрастании нагрузки стабильность работы решения в конфигурации docker compose будет ниже, чем при использовании Kubernetes или при установке при помощи пакетов.

Важно

ТестОпс — это ПО, которое требует значительных вычислительных ресурсов и не предназначено для установки на персональные компьютеры и лэптопы. Для установки ТестОпс требуется сервер или виртуальная машина.

Важно

Начиная с релиза 4.18.0 настройки SMTP-сервера в сервисе UAA являются обязательными, т.к. наличие этой настройки обеспечивает работу функционала для приглашения пользователей в ТестОпс.

Переход на ТестОпс с установки Allure TestOps

Если вы переходите на ТестОпс с существующего инстанса Allure TestOps, то воспользуйтесь вот этой инструкцией для изменения файлов конфигурации.

Предусловия

  1. Вам понадобится docker compose версии 2+ на вашей машине, где вы собираетесь устанавливать ТестОпс.
  2. Учетные данные (логин, пароль) для скачивания образов ТестОпс предоставляются службой продаж при предоставлении ознакомительной или коммерческой лицензии. Учетные данные могут быть использованы для установки как пакетами, так и при помощи docker compose или Kubernetes. Особенности каждого вида установки описаны в соответствующих разделах документации.
  3. Вам также понадобится ознакомительная или коммерческая лицензия для ТестОпс.

Реестр образов для ТестОпс

Если вы читаете здесь, то предполагается, что у вас уже есть все данные для скачивания образов и лицензия (ознакомительная или коммерческая), полученные от нашей команды продаж.

Для того, чтобы установить ТестОпс при помощи docker compose требуется скачать образы ПО следующим образом:

Важно

Пожалуйста, прочтите внимательно два пункта и используйте только эмулятор терминала для всех описанных далее действий:

  • Вы не можете воспользоваться веб-интерфейсом докера, это не будет работать.
  • Вы не можете войти в реестр, используя пользовательский интерфейс Docker Desktop.

Образы сервисов, входящих в состав ТестОпс находятся в частном реестре, для доступа к которому требуется имя пользователя (username) и пароль (password), которые предоставляются отделом продаж.

Вход в реестр

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

docker login reg.qatools.ru -u <username> -p <password>

Конфигурирование, скачивание образов и старт системы

Варианты установки. Рекомендации для установки в производственной среде.

Для установки ТестОпс есть два варианта

  1. Демо установка (в названии папки с шаблонами конфигурации есть слово demo).
  2. Для установки в производственной среде (в названии папки с шаблонами конфигурации нет слова demo).

Демо установка

Важно

Этот вариант не подходит для установки в производственной среде и может хорошо работать при небольших нагрузках. При любых изменениях в конфигурационных файлах этот вариант установки может привести к ощутимым трудозатратам для миграции от одних файлов конфигурации к другим (миграция БД, миграция файлов).

Файлы для демо-установки находятся в папках

  • testops-demo
  • testops-demo-ldap

Демо-установка подразумевает, что все сервисы, которые нужны для работы ТестОпс, включая сторонние сервисы, используемые в решении, будут запускаться в контейнерах рамках одной установки ТестОпс.

Производительность таких решений как БД PostgreSQL, S3, RabbitMQ (все эти решения подразумевают наличие постоянных данных) при работе в контейнерах может быть ощутимо хуже, чем при установке как отдельное решение на виртуальной. При работе в контейнерах вы можете при остановке или перезапуске этих серверов вы можете потерять данные и мы ре рекомендуем использование демо установки в производственной среде.

Установка в производственной среде

Файлы для установки находятся в папках

  • testops
  • testops-ldap
  • testops-oidc

Этот вариант установки необходимо использовать с самого начала, если вы планируете использовать ТестОпс в производственной среде и при нагрузке более 5000 результатов автотестов в сутки.

Конфигурация установки в производственной среде предполагает обязательное вынесение следующих элементов решения из docker compose и установку этих элементов на отдельных виртуальных машинах (не в контейнерах):

  1. База данных (report, uaa).
  2. Решение S3 для хранения артефактов.
  3. Желательно так же выносить из docker compose решение RabbitMQ

Шаблоны файлов конфигурации

Шаблоны файлов конфигурации для развертывания при помощи docker compose можно скачать можно по ссылке.

Архив шаблонов содержит несколько папок:

  • testops
    • основная конфигурация для установки в производственной среде.
  • testops-demo
    • установка для демо целей. Не подходит для производственной среды.
  • testops-oidc
    • основной вариант установки при использовании OIDC в качестве IAM
  • testops-ldap
    • основной вариант установки при использовании LDAP в качестве IAM
  • testops-demo-ldap
    • установка для демо целей при использовании LDAP в качестве IAM. Не подходит для производственной среды.
  • extras
    • дополнительные примеры конфигураций для мониторинга
    • дополнительные примеры конфигураций для MinIO
    • дополнительные примеры конфигураций для баз данных
Важно

Все пользовательские настройки выполняются только в файле .env. В файл docker-compose.yml должен оставаться без изменений и в него могут добавляться параметры только из папки extras или параметры, рекомендованные технической поддержкой.

Конфигурирование

Для подготовки конфигурации для установки ТестОпс при помощи docker compose вам потребуется выполнить следующие действия:

  1. Распаковать скачанный архив в домашнюю папку пользователя на сервере, где вы планируете разворачивать ТестОпс.
  2. Перейти в папку полученную после распаковки архива.
  3. Выбрать вариант конфигурации (см. выше), который вы собираетесь использовать и скопировать файлы env-example и docker-compose.yml в вашу рабочую директорию (например /opt/testops).
  4. Файл env-example необходимо переименовать в .env
  5. Открыть файл .env в режиме редактирования и выполнить изменения для:
    1. Переменной ALLURE_VERSION, которая указывает, какой релиз требуется ставить.
    2. Всех переменных окружения, которые содержат пароли или секреты.
    3. Переменной ALLURE_HOST
    4. Временной зоны севера, на котором вы разворачиваете систему
  6. Заполнить корректно все настройки, которые начинаются с ALLURE_MAIL_
  7. Сохранить сделанные изменения.

Установка ТестОпс на сервере

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

  1. Выполняется команда
docker compose up -d
  1. Начальный запуск и инициализация БД могут занять до 6 минут.
  2. Система становится доступна по адресу и порту, настроенным вами в конфигурационном файле .env.

Доступ к пользовательскому интерфейсу

При первом запуске вам потребуется имя пользователя и пароль администратора системы, которые вы задали в конфигурационных файлах.

Эти учетные данные следует всегда использовать для доступа к системе для ее администрирования и обновления лицензии.

Имя пользователя для администратора задается в переменной окружения ALLURE_ADMIN.

Пароль для администратора задается в переменной окружения ALLURE_ADMIN_PASS.

При перезапуске системы пароль возвращается в состояние, описанное в ALLURE_ADMIN_PASS.

Решение проблем

При появлении ошибок (пользовательский интерфейс или недоступен или содержит сообщения об ошибках), сбор данных проводится средствами docker compose.

  1. Выполните следующие команды в терминале, находясь в той же папке, что и конфигурационные файлы (скопируйте все три строки, вставьте в окно терминала и нажмите Enter):
docker compose logs allure-report > report-logs.txt && \
docker compose logs allure-uaa > uaa-logs.txt && \
docker compose logs allure-gateway > gateway-logs.txt
  1. Проверьте, какие ошибки описаны в лог-файлах.
  2. Остановите систему при помощи команды docker compose down
  3. Исправьте конфигурацию и запустите систему.
  4. Если описание ошибок вам не понятно, уточните с ответственными за инфраструктуру и сесть.
  5. Если проблему не удалось решить самостоятельно, то обратитесь за помощью к нашей команде, ответственной за счастье клиентов.

Обновление ТестОпс

  1. Откройте .env для редактирования
  2. Обновите значение переменной ALLURE_VERSION на идентификатор релиза, который вы планируете установить.
  3. Выполните команду docker compose pull
    1. Дождитесь окончания выполнения команды
  4. Выполните команду docker compose down
  5. Выполните команду docker compose up -d

Полное удаление установки

Полное удаление установки выполняется средствами docker compose:

docker compose down -v --rmi local