Comment on page

Версия 1.30.0 и более поздние

Назначение документа

Документ описывает действия системного администратора по установке и настройке ПО TeamStorm v. 1.30.0 и выше.

Установка программного ПО

Установка ПО TeamStorm осуществляется только после предварительной установки ПО Test IT.
Установка Test IT описана в документации Test IT.
ПО TeamStorm необходимо устанавливать на тот же хост, на который установлено ПО Test IT.

Установка, перезапуск и удаление в Docker Compose

Требования

Состав поставки

images.tar - архив с образами (только в архиве для автономной установки).
Состав поставки TeamStorm:
  • .env - конфигурационный файл, содержащий переменные, используемые для обращения к контейнерам TeamStorm;
  • docker-compose.cwm.yml - конфигурационный файл Docker Compose.

Установка и настройка TestIT

  1. 1.
    Загрузите и установите ПО TestIT в соответствии с документацией Test IT.
  2. 2.
    Настройте поддержку TeamStorm в Test IT, заменив значение переменной CWM_ENABLED
# Отредактируйте файл переменных окружения Testit:
vi ./testit/.env
<<<
CWM_ENABLED="false"
>>>
CWM_ENABLED="true"
  1. 3.
    При обновлении с Test IT 4.0.2 на Test IT 4.1.0 и выше, а TeamStorm с 1.30.0 на 1.31.0 и выше необходимо выставить переменную для сервиса auth: CAN_EDIT_SYSTEM_ROLES: true.
$ vi ./testit/docker-compose.yml
...
auth:
...
environment:
>>> CAN_EDIT_SYSTEM_ROLES: "${CAN_EDIT_SYSTEM_ROLES:-true}"

Подготовка

  1. 1.
    Измените значения переменных по умолчанию в .env-файле.
  2. 2.
    Задайте параметры vm.max_map_count=262144 и vm.overcommit_memory=1:
    echo 'vm.max_map_count=262144' >> /etc/sysctl.conf
    echo 'vm.overcommit_memory = 1' >> /etc/sysctl.conf
    sysctl -p
  3. 3.
    Заблокируйте все порты, кроме порта 80, необходимого для доступа к пользовательскому интерфейсу.
  4. 4.
    Опционально: для обслуживания системы посредством протокола SSH, необходимо открыть порт 22 (может быть переназначено на конкретной конфигурации). Для работы по HTTPS необходимо открыть порт 443. Пример открытия доступа к портам для CentOS 8:
    firewall-cmd --zone=public --add-port=80/tcp --permanent
    firewall-cmd --zone=public --add-port=22/tcp --permanent
    firewall-cmd --zone=public --add-port=443/tcp --permanent
    firewall-cmd --reload

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

Данный тип установки поможет установить продукт, если сервер изолирован от сети Internet и нет возможности получить Docker-образы с публичных репозиториев.
  1. 1.
    Распакуйте содержимое архива автономной установки, например, в папку ~/teamstorm_v1.30.0.
  2. 2.
    Выполните следующие команды:
tar -xzvf ts_distro_v1.30.0.tgz
chmod +x setup.sh
./setup.sh

Перезапуск системы

Для перезапуска системы воспользуйтесь следующей командой:
cd teamstorm_v1.30.0
docker-compose -f docker-compose.cwm.yml --project-name teamstorm restart --timeout 120

Удаление системы

Для полного удаления системы и ее данных необходимо выполнить следующую команду:
cd teamstorm_v1.30.0
docker-compose -f docker-compose.cwm.yml --project-name teamstorm down --volumes --timeout 120
Чтобы сохранить информацию для последующего использования, выполните команду без флага --volumes.

Описание .env файла

Репозиторий для скачивания образов установки TeamStorm:
CWM_DOCKER_REGISTRY="docker.testit.ru/teamstorm"
Текущая версия программы:
CWM_CONTAINER_VERSION="1.30.0"
Ключи доступа к хранилищу прикрепляемых файлов в TeamStorm (minio):
AWS_ACCESS_KEY="testitAccessKey"
AWS_SECRET_KEY="testitSecretKey"
Параметры подключения к RabbitMQ:
RABBITMQ_DEFAULT_HOST="teamstorm_rabbitmq"
RABBITMQ_DEFAULT_PASS="password"
RABBITMQ_DEFAULT_USER="teamstorm"
RABBITMQ_DEFAULT_VHOST="teamstorm"
Параметры подключения к базе данных (при установке внешней базы данных поменять на свои значения):
POSTGRES_DEFAULT_DB="postgres"
POSTGRES_DEFAULT_USER="postgres"
POSTGRES_DEFAULT_PASSWORD="password"
POSTGRES_DEFAULT_PORT="5432"
POSTGRES_DEFAULT_HOST="database_service"
Для каждой конкретной базы данных значения по умолчанию можно заменить:
POSTGRES_ATTACHMENT_DB_HOST="${POSTGRES_DEFAULT_HOST}"
POSTGRES_ATTACHMENT_DB_DB="teamstorm_attachment_db"
POSTGRES_ATTACHMENT_DB_USER="${POSTGRES_DEFAULT_USER}"
POSTGRES_ATTACHMENT_DB_PASSWORD="${POSTGRES_DEFAULT_PASSWORD}"
POSTGRES_ATTACHMENT_DB_PORT="${POSTGRES_DEFAULT_PORT}"
POSTGRES_COMMENT_DB_HOST="${POSTGRES_DEFAULT_HOST}"
POSTGRES_COMMENT_DB_DB="teamstorm_comment_db"
POSTGRES_COMMENT_DB_USER="${POSTGRES_DEFAULT_USER}"
POSTGRES_COMMENT_DB_PASSWORD="${POSTGRES_DEFAULT_PASSWORD}"
POSTGRES_COMMENT_DB_PORT="${POSTGRES_DEFAULT_PORT}"
POSTGRES_DB_HOST="${POSTGRES_DEFAULT_HOST}"
Из вышеуказанных значений формируется строка подключения к базе данных:
PG_ATTACHMENT_CONNECTION_STRING="Host=${POSTGRES_DEFAULT_HOST};Port=${POSTGRES_DEFAULT_PORT};Database=teamstorm_attachment_db;Username=${POSTGRES_ATTACHMENT_DB_USER};Password=${POSTGRES_ATTACHMENT_DB_PASSWORD};"
PG_COMMENT_CONNECTION_STRING="Host=${POSTGRES_DEFAULT_HOST};Port=${POSTGRES_DEFAULT_PORT};Database=teamstorm_comment_db;Username=${POSTGRES_COMMENT_DB_USER};Password=${POSTGRES_COMMENT_DB_PASSWORD};"
PG_CONNECTION_STRING="Host=${POSTGRES_DEFAULT_HOST};Port=${POSTGRES_DEFAULT_PORT};Database=teamstormdb;Username=${POSTGRES_DB_USER};Password=${POSTGRES_DB_PASSWORD};Pooling=true"
Системные параметры, оставить без изменений:
ASPNETCORE_ENVIRONMENT="Production"
FILE_BUCKET_NAME="teamstorm"