Установка ТестОпс версии 4.x в Docker Compose
Внимание
В инструкции описана установка ТестОпс версии 4.x. Чтобы установить ТестОпс версии 5.x, см. Установка ТестОпс версии 5.x в Docker Compose.
Этот вариант установки является самым простым, но в то же время одним из самых ненадежных и подходит для небольших команд с относительно небольшой нагрузкой (не более 5000 результатов автотестов в сутки). При возрастании нагрузки стабильность работы решения в конфигурации docker compose будет ниже, чем при использовании Kubernetes или при установке при помощи пакетов.
Важно
ТестОпс — это ПО, которое требует значительных вычислительных ресурсов и не предназначено для установки на персональные компьютеры и лэптопы. Для установки ТестОпс требуется сервер или виртуальная машина.
Важно
Начиная с релиза 4.18.0 настройки SMTP-сервера в сервисе UAA являются обязательными, т.к. наличие этой настройки обеспечивает работу функционала для приглашения пользователей в ТестОпс.
Переход на ТестОпс с установки Allure TestOps
Если вы переходите на ТестОпс с существующего инстанса Allure TestOps, см. Переход на ТестОпс с установки Allure TestOps в Docker Compose.
Предусловия
Вам понадобится docker compose версии 2+ на вашей машине, где вы собираетесь устанавливать ТестОпс.
Вам также понадобится пробная или коммерческая лицензия для ТестОпс. Чтобы ее получить:
- Перейдите по адресу qatools.ru/pricing.
- Выберите нужный тип лицензии и заполните форму запроса.
После получения запроса с вами свяжется наш отдел продаж.
Вместе с лицензионным ключом вы получите имя пользователя и пароль для доступа к образу ТестОпс.
Реестр образов ТестОпс
Если вы читаете здесь, то предполагается, что у вас уже есть все данные для скачивания образов и лицензия (ознакомительная или коммерческая), полученные от нашего отдела продаж.
Для того, чтобы установить ТестОпс при помощи docker compose требуется скачать образы ПО следующим образом:
Важно
Пожалуйста, прочтите внимательно два пункта и используйте только эмулятор терминала для всех описанных далее действий:
- Вы не можете воспользоваться интерфейсом докера, это не будет работать.
- Вы не можете войти в реестр, используя пользовательский интерфейс Docker Desktop.
Образы сервисов, входящих в состав ТестОпс находятся в частном реестре, для доступа к которому требуется имя пользователя (username) и пароль (password), которые предоставляются отделом продаж.
Вход в реестр
Чтобы войти в docker реестр, вам нужно выполнить команду:
bash
docker login reg.qatools.ru -u <username> -p <password>Конфигурирование, скачивание образов и старт системы
Варианты установки. Рекомендации для установки в производственной среде.
Для установки ТестОпс есть два варианта
- Демо установка (в названии директории с шаблонами конфигурации есть слово demo).
- Для установки в производственной среде (в названии директории с шаблонами конфигурации нет слова demo).
Демо установка
Важно
Этот вариант не подходит для установки в производственной среде и может хорошо работать при небольших нагрузках. При любых изменениях в конфигурационных файлах этот вариант установки может привести к ощутимым трудозатратам для миграции от одних файлов конфигурации к другим (миграция БД, миграция файлов).
Файлы для демо-установки находятся в директориях
testops-demotestops-demo-ldap
Демо-установка подразумевает, что все сервисы, которые нужны для работы ТестОпс, включая сторонние сервисы, используемые в решении, будут запускаться в контейнерах рамках одной установки ТестОпс.
Производительность таких решений как БД PostgreSQL, S3, RabbitMQ (все эти решения подразумевают наличие постоянных данных) при работе в контейнерах может быть ощутимо хуже, чем при установке как отдельное решение на виртуальной. При работе в контейнерах вы можете при остановке или перезапуске этих серверов вы можете потерять данные и мы ре рекомендуем использование демо установки в производственной среде.
Установка в производственной среде
Файлы для установки находятся в директориях
testopstestops-ldaptestops-oidc
Этот вариант установки необходимо использовать с самого начала, если вы планируете использовать ТестОпс в производственной среде и при нагрузке более 5000 результатов автотестов в сутки.
Конфигурация установки в производственной среде предполагает обязательное вынесение следующих элементов решения из docker compose и установку этих элементов на отдельных виртуальных машинах (не в контейнерах):
- База данных (report, uaa).
- Решение S3 для хранения артефактов.
- Желательно так же выносить из docker compose решение RabbitMQ
Шаблоны файлов конфигурации
Скачайте архив конфигурационных файлов Docker Compose в формате ZIP.
Архив шаблонов содержит несколько папок:
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 вам потребуется выполнить следующие действия:
- Распаковать скачанный архив в домашнюю директорию пользователя на сервере, где вы планируете разворачивать ТестОпс.
- Перейти в директорию полученную после распаковки архива.
- Выбрать вариант конфигурации (см. выше), который вы собираетесь использовать и скопировать файлы
env-exampleиdocker-compose.ymlв вашу рабочую директорию (например/opt/testops). - Файл
env-exampleнеобходимо переименовать в.env - Открыть файл
.envв режиме редактирования и выполнить изменения для:- Переменной
ALLURE_VERSION, которая указывает, какой релиз требуется ставить. - Всех переменных окружения, которые содержат пароли или секреты.
- Переменной
ALLURE_HOST - Временной зоны севера, на котором вы разворачиваете систему
- Переменной
- Заполнить корректно все настройки, которые начинаются с
ALLURE_MAIL_ - Сохранить сделанные изменения.
Установка ТестОпс на сервере
Разворачивание конфигурации для ознакомительных целей осуществляется следующим образом:
Выполняется команда
bashdocker compose up -dНачальный запуск и инициализация БД могут занять до 6 минут.
Система становится доступна по адресу и порту, настроенным вами в конфигурационном файле
.env.
Доступ к пользовательскому интерфейсу
При первом запуске вам потребуется имя пользователя и пароль администратора системы, которые вы задали в конфигурационных файлах.
Эти учетные данные следует всегда использовать для доступа к системе для ее администрирования и обновления лицензии.
Имя пользователя для администратора задается в переменной окружения ALLURE_ADMIN.
Пароль для администратора задается в переменной окружения ALLURE_ADMIN_PASS.
При перезапуске системы пароль возвращается в состояние, описанное в ALLURE_ADMIN_PASS.
Решение проблем
При появлении ошибок (пользовательский интерфейс или недоступен или содержит сообщения об ошибках), сбор данных проводится средствами docker compose.
Выполните следующие команды в терминале, находясь в той же директории, что и конфигурационные файлы (скопируйте все три строки, вставьте в окно терминала и нажмите Enter):
bashdocker compose logs allure-report > report-logs.txt && \ docker compose logs allure-uaa > uaa-logs.txt && \ docker compose logs allure-gateway > gateway-logs.txtПроверьте, какие ошибки описаны в лог-файлах.
Остановите систему при помощи команды
docker compose downИсправьте конфигурацию и запустите систему.
Если описание ошибок вам не понятно, уточните с ответственными за инфраструктуру и сесть.
Если проблему не удалось решить самостоятельно, то обратитесь за помощью к нашей команде, ответственной за счастье клиентов.
Обновление ТестОпс
- Откройте
.envдля редактирования - Обновите значение переменной
ALLURE_VERSIONна идентификатор релиза, который вы планируете установить. - Выполните команду
docker compose pullДождитесь окончания выполнения команды - Выполните команду
docker compose down - Выполните команду
docker compose up -d
Полное удаление установки
Полное удаление установки выполняется средствами docker compose:
bash
docker compose down -v --rmi local
