Установка Orchestrator с помощью Docker
1. Предварительные условия и требования
Аппаратные требования минимальны: 2 ядра CPU, 4 ГБ оперативной памяти
Программное обеспечение:
- Операционная система: Любая ОС с поддержкой Docker
- Docker Compose: версия 2.0+
- Учетная запись для
nexus.primo-rpa.ru:8000
Сетевая конфигурация:
- Открытый порт:
5080(Orchestrator UI) - порт можно изменить, если 5080 занят - Разрешенный исходящий доступ к реестру образов
nexus.primo-rpa.ru:8000
Получение файлов и доступ к реестру
-
Получите учетные данные для доступа к реестру, обратившись в службу поддержки Primo RPA.
-
Скачайте файл
docker-compose.ymlдля необходимой версии:
2. Предварительная настройка
-
Скачайте файл
docker-compose.yml -
Настройте параметры в файле:
10.0.0.18 заменить на ip хоста, где запущен docker-compose (в двух местах: - base-url: &base-url http://10.0.0.18:5080 - RDP__RdpBaseUrl: http://10.0.0.18:5080/rdpstream) 10.0.0.151 после настройки службы RDP2 (см. п.6) заменить на ip RDP2 (в одном месте: NGINX_RDP_STREAM_HOSTNAME: 10.0.0.151)
3. Установка Docker
Инструкции по установке Docker см. в официальной документации: - Docker для Ubuntu - Docker для Astra Linux
# Обновление пакетов
sudo apt-get update
sudo apt-get install -y ca-certificates curl
# Добавление официального репозитория Docker
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Установка Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginПроверка установки:
docker --version
docker compose version
sudo systemctl status docker4. Запуск Orchestrator
Все команды (кроме docker login) выполняются с правами root или через
sudo
-
Авторизация в Nexus через docker login:
sudo docker login nexus.primo-rpa.ru:8000 -
Подготовка директории:
sudo mkdir -p /opt/Docker # Скопируйте подготовленный docker-compose.yml в /opt/Docker -
Запуск контейнеров:
cd /opt/Docker sudo docker compose up -d -
Проверка статуса:
sudo docker ps # Все контейнеры должны быть в статусе "Up"
5. Проверка работоспособности
После запуска контейнеров откройте в браузере:
- Orchestrator UI:
http://ваш_ip_сервера:5080/
Проверка через командную строку:
curl -I http://ваш_ip_сервера:5080/
6. Настройка RDP2
Служба Primo.Orchestrator.RDP2 не устанавливается в рамках докера, поэтому потребуется отдельное разворачивание согласно инструкции:
Настройка конфигурации RDP2
В конфигурации RDP2 указать IP и порт сервера, на котором развернут Оркестратор (параметры EnabledOrigins, BaseUrl, Host):
"EnabledOrigins": ["http://10.0.0.18:5088"],
"ConfigPasswordEncryptor": {
"Algorithm": "AES" //AES или RSA
},
"Orchestrator": {
"BaseUrl": "http://10.0.0.18:5088"
},
"Host": "10.0.0.151", // IP машины с сервисом RDP2, если не задан, то IP определяется из http-запросаOrchestrator в Docker контейнере работает по протоколу HTTP. Убедитесь, что в
настройках RDP2 для параметров EnabledOrigins и BaseUrl указан протокол
http://, а не https://.
Настройка docker-compose.yml
После настройки RDP2 необходимо прописать его адрес в файле docker-compose.yml.
Предположим, что:
- UI Оркестратора доступен по адресу:
http://10.0.0.18:5080 - Адрес и порт RDP2-сервера:
10.0.0.151:5102
Тогда внесите следующие изменения:
-
В секции
environmentобразаwebapiотредактируйте строку:RDP__RdpBaseUrl: http://10.0.0.18:5080/rdpstream -
В секции
environmentобразаuiотредактируйте строки:NGINX_RDP_STREAM_HOSTNAME: 10.0.0.151 NGINX_RDP_STREAM_PORT: 5102
7. Обновление версии
-
Остановка текущей версии:
cd /opt/Docker sudo docker compose down sudo docker compose up -d -
Обновление тегов образов в
docker-compose.yml -
Запуск новой версии:
sudo docker compose up -d -
Очистка старых образов:
sudo docker image prune
Примечание: docker compose restart НЕ применит изменения переменных окружения