Установка Sherpa Orchestrator на Linux#
Инструкция предназначена для системного администратора, который выполняет новую установку Sherpa Orchestrator в контуре компании. Установка выполняется с использованием Docker. Установка без Docker больше не поддерживается.
Установка Оркестратора подготавливает сервер управления. Роботы и Координатор устанавливаются отдельно на предназначенные для них машины по инструкциям развертывания платформы.
Подготовка сервера#
Для установки необходимы Linux-сервер и учетная запись администратора с правами sudo. Совместимость дистрибутива и состав поставки необходимо согласовать до начала работ. Команды установки Docker зависят от дистрибутива.
До получения дистрибутива необходимо подготовить:
- ресурсы сервера по требованиям Docker-поставки: CPU с архитектурой x86-64-v2 и не менее чем двумя ядрами, 4 ГБ оперативной памяти и 20 ГБ свободного места. Для образов, БД, Хранилища и резервных копий требуется дополнительный запас с учетом нагрузки;
- постоянный адрес сервера и доменное имя, которое разрешается в этот адрес с компьютеров Пользователей и Роботов. Для веб-интерфейса требуется доступ по HTTPS на порт 443;
- сертификат для выбранного имени, его цепочку доверия и закрытый ключ. Получение и размещение файлов описаны в статье Установка и настройка SSL-сертификатов;
- выбранный вариант БД. Для отдельного сервера PostgreSQL администратор БД подготавливает доступ и параметры подключения по инструкции по внешней PostgreSQL.
На Linux-сервере необходимо установить и запустить Docker Engine и плагин Docker Compose v2 по инструкции Docker для используемого дистрибутива. Установщик Sherpa требует Bash версии 4 или новее. Для генерации сертификата и ключа шифрования требуется openssl.
Для предварительной проверки используются команды:
bash --version
sudo docker info
sudo docker compose version
openssl version
df -h
free -h
Если Docker недоступен или команда docker compose version завершается ошибкой, сначала необходимо устранить проблему Docker. Отдельная утилита docker-compose версии 1 не заменяет Compose v2.
Пример: проверьте версии Docker и Compose на подготовленном сервере. На тестовом сервере Ubuntu выделено 4 ГБ ОЗУ, запущены Docker 29.9.2 и Compose 5.6.1. Работоспособность на этом стенде не заменяет согласование поддерживаемой ОС.

Состояние четырех контейнеров Sherpa Orchestrator 5.9.5 и ответ HTTPS 200.
Подготовка файлов поставки#
Для установки необходимо получить у технической поддержки Sherpa клиентский архив docker_orchestrator_client_files_VERSION.tgz и архивы образов согласованной версии. Образы backend, nginx, WebSocket и выбранной БД должны соответствовать клиентским файлам. Дополнительные компоненты требуют собственных образов.
Архив необходимо распаковать в отдельный каталог новой установки. Для стандартного размещения используется /opt/SherpaOrchestrator. В командах требуется заменить /path/to и VERSION на путь и версию полученного клиентского архива:
sudo mkdir -p /opt/SherpaOrchestrator
sudo tar -xzf /path/to/docker_orchestrator_client_files_VERSION.tgz -C /opt/SherpaOrchestrator
cd /opt/SherpaOrchestrator
В корне распакованной поставки должны находиться .env, docker-compose.yml и каталог sh_scripts. Архивы Docker-образов необходимо разместить в этом же каталоге. Проверка файлов перед запуском выполняется командами:
sudo test -f .env
sudo test -f docker-compose.yml
sudo test -f sh_scripts/install.sh
sudo test -f sh_scripts/diagnostics.sh
Команда test при наличии файла завершается без вывода с кодом 0. Если файл отсутствует, необходимо проверить каталог распаковки и полноту поставки. Не следует подменять отсутствующие файлы файлами другой версии или распаковывать новую установку поверх работающей.
Пример: после распаковки поставки 5.9.5 проверьте наличие четырех служебных файлов. Для установки с MariaDB сопоставьте версии архивов orchestrator, orchestrator-nginx, orchestrator-websocket и orchestrator-db. На тестовом сервере все файлы найдены, версии образов совпадают.

Проверка клиентских файлов и образов поставки 5.9.5.
Запуск установщика и настройка подключения#
Для пошаговой установки из корня поставки необходимо выполнить:
cd /opt/SherpaOrchestrator
sudo chmod +x sh_scripts/*.sh
sudo bash sh_scripts/install.sh
Установщик проверяет окружение, предлагает выбрать БД и дополнительные компоненты, проверяет архивы, загружает образы и подготавливает конфигурацию. Затем выполняются настройка .env, подготовка HTTPS и запуск выбранных сервисов.
Вариант БД определяется схемой размещения:
- MariaDB в Docker — БД запускается на сервере Оркестратора с профилем
mariadb; - PostgreSQL в Docker — БД запускается на сервере Оркестратора с профилем
pg; - внешняя MySQL — используется отдельный сервер БД, локальный контейнер БД не запускается;
- внешняя PostgreSQL — используется отдельный сервер PostgreSQL, локальный контейнер БД не запускается.
Для подключения серверных компонентов необходимо задать следующие параметры:
HOST_IP— постоянный IP-адрес сервера Оркестратора, доступный клиентским машинам;NGINX_DOMAIN_NAME— доменное имя веб-интерфейса, для которого выпущен сертификат;ORCHESTRATOR_ENCRYPTION_KEY— ключ шифрования данных. Для новой установки необходимо сгенерировать ключ средствами установщика и сохранить его вместе с защищенной конфигурацией и резервными копиями;DB_ENGINE— тип БД. Установщик задаетmysqlдля MariaDB/MySQL илиpgsqlдля PostgreSQL по выбранному варианту;MYSQL_PASSWORD— пароль подключения к MariaDB/MySQL. Установщик также записывает соответствующее значениеDB_PASSWORDдля контейнера MariaDB;POSTGRES_PASSWORD— пароль подключения к PostgreSQL. Параметр заполняется только при выборе PostgreSQL;MYSQL_HOST— адрес отдельного сервера для внешней MySQL;POSTGRES_HOST— адрес отдельного сервера для внешней PostgreSQL;POSTGRES_PORT— порт внешнего сервера PostgreSQL;POSTGRES_USER— имя роли подключения к внешней PostgreSQL;POSTGRES_DBNAME— имя целевой БД на внешнем сервере PostgreSQL.
Параметры выбранной БД заполняются данными, предоставленными ее администратором. Для внешней PostgreSQL также необходимо проверить существование роли и БД. Необходимые права и вариант их подготовки описаны в инструкции по внешней PostgreSQL. Значения паролей и ключа шифрования не следует включать в скриншоты или обращения в поддержку.
В Docker-поставке конфигурация приложения поступает из .env. Отдельно редактировать backend/config/config.ini и backend/config/phinx.php для этого варианта установки не требуется.
Дополнительные компоненты выбираются по назначению: VNC-proxy — для VNC-подключений к Роботам, Vault — для хранения секретов, SIEM — для передачи событий аудита во внешнюю систему. Для Vault необходимо выполнить настройку хранилища секретов. Состав SIEM и проверка доставки описаны в разделе С использованием Docker.
Для HTTPS необходимо использовать сертификат и закрытый ключ выбранного домена. Установщик предусматривает размещение файлов orchestrator.crt и orchestrator.key в nginx/config/certs. Доверие к корпоративному центру сертификации необходимо настроить также на клиентских машинах.
Пример: выберите MariaDB в Docker и отключите дополнительные профили, если они не нужны для выбранной схемы. Завершите шаги мастера и проверьте конфигурацию Compose. В журнале тестовой установки присутствуют шаги 0–8 и сообщение о завершении, команда проверки возвращает код 0, четыре контейнера работают. Это не заменяет функциональную приемку.

Шаги установщика и проверка запущенных контейнеров.
Проверка запуска и первый вход#
После завершения установщика необходимо проверить конфигурацию и состояние сервисов из каталога установки:
cd /opt/SherpaOrchestrator
sudo docker compose config --quiet
sudo docker compose ps
sudo bash sh_scripts/diagnostics.sh
В конфигурации не должно быть ошибок. Сервисы orchestrator, orchestrator-nginx и orchestrator-websocket должны работать. Состав БД и дополнительных сервисов зависит от сделанного выбора. При внешней БД отсутствие локального контейнера БД соответствует выбранной схеме.
Диагностика проверяет компоненты установки и сообщает об обнаруженных проблемах. Предлагаемые исправления необходимо читать до подтверждения. Успешная диагностика не заменяет проверку входа, Лицензий и выполнения Работы.
Диагностика завершается кодом 0, если проверяемые компоненты не вызвали замечаний. Код 1 требует разбора результатов. Проверка журналов может показать ошибки, сохраненные с первого запуска, даже после устранения причины. Необходимо сопоставить время сообщения с текущим состоянием сервиса. Предложенное исправление прав Storage необходимо согласовать с политикой доступа к файлам перед подтверждением.
Перед изменением прав backend/Storage необходимо определить пользователя backend, которому требуется запись. Пользователь Nginx может иметь другой UID. Пользователь, заданный для выполнения команд в контейнере, проверяется командой:
sudo docker exec orchestrator id
На тестовом образе 5.9.5 команда возвращает uid=82(www-data) gid=82(www-data). Эти значения относятся к проверенному образу. После исправления необходимо проверить загрузку и чтение отдельного тестового файла через приложение. Проверка одного числового режима каталога не заменяет эту проверку.
Для первого входа необходимо открыть в браузере HTTPS-адрес выбранного домена, проверить корректность сертификата и использовать учетные данные администратора, предоставленные для новой установки. Например, при NGINX_DOMAIN_NAME=orchestrator.example.org адрес веб-интерфейса — https://orchestrator.example.org. Пример домена необходимо заменить реальным именем сервера.
Пример: войдите под учетной записью администратора новой установки и откройте раздел Роботы. В правом верхнем углу отображается имя вошедшего Пользователя. На тестовом сервере раздел доступен после успешной авторизации.

Раздел Роботы после входа администратора в Sherpa Orchestrator 5.9.5.
После входа необходимо настроить Лицензии по статье Создание новой Лицензии в Оркестраторе. Настройка Роботов и проверка тестовой Работы выполняются после подготовки серверной части. Открытие страницы входа само по себе не подтверждает готовность всей платформы.
Для функциональной приемки необходимы действующая Лицензия, подключенный тестовый Робот и опубликованный тестовый Процесс. Создание и запуск описаны в статье Создание Работы с выбранными Роботом и Процессом. Приемка включает переход Работы в конечный успешный статус и проверку ожидаемого результата Процесса. Сохранение Работы или ее ожидание в очереди не подтверждает выполнение.
Если сервис завершается или постоянно перезапускается, для поиска причины используются журналы:
sudo docker compose logs --tail 100 orchestrator orchestrator-nginx orchestrator-websocket
При ошибке БД необходимо проверить выбранный вариант и параметры подключения. При ошибке HTTPS — доменное имя, сертификат, ключ и доверие на клиентской машине. Перед передачей журналов в поддержку требуется исключить пароли, ключи и другие секреты.
Проверка автозапуска и дальнейшая настройка#
Для восстановления работы после перезагрузки должны быть настроены автозапуск Docker и политики перезапуска контейнеров. Состояние службы Docker проверяется на Linux-сервере:
sudo systemctl is-enabled docker
sudo systemctl is-active docker
Политики контейнеров необходимо сверить с docker-compose.yml полученной поставки и правилами перезапуска Docker. После согласованной перезагрузки сервера необходимо повторить проверку сервисов, HTTPS и входа.
Пример: после согласованной перезагрузки сервера повторите проверку. На тестовом сервере служба Docker активна, четыре контейнера работают и HTTPS возвращает код 200. Это подтверждает восстановление серверных компонентов.

Проверка контейнеров и HTTPS после перезагрузки Ubuntu.
Для дальнейшей подготовки платформы используются следующие материалы:
- Авторизация Пользователей — настройка способов входа после установки;
- Резервное копирование и восстановление — сохранение БД, конфигурации, Хранилища и секретов;
- Процесс установки Sherpa Orchestrator — подробные ручные операции Docker-поставки.