Установка и настройка nginx от root
Инструкция описывает установку и запуск nginx для Primo RPA Orchestrator на Linux от имени пользователя root.
В этом режиме главный процесс nginx запускается от root, а рабочие процессы — от пользователя, заданного конфигурацией или сборкой nginx. Для управления службой используется системный unit-файл Primo.Orchestrator.Nginx.service.
Перед началом
- Установите nginx из репозитория операционной системы (
aptилиdnf, в зависимости от дистрибутива). Для установки используются бинарный файл/usr/sbin/nginxи файл/etc/nginx/mime.types. - Подготовьте файлы из комплекта поставки Primo RPA Orchestrator:
nginx.linux.conf— конфигурация nginx;Primo.Orchestrator.Nginx.service— системный unit-файл;cert1.crtиcert1.rsa— сертификат и закрытый ключ TLS;- дистрибутив веб-интерфейса UI.
- Выполняйте приведённые ниже команды с правами администратора. Примеры содержат
sudo; при работе непосредственно из оболочкиrootего можно опустить.
Важно: для запуска конфигурации Primo RPA Orchestrator используется отдельная служба
Primo.Orchestrator.Nginx. Стандартную службуnginxоперационной системы необходимо отключить, чтобы исключить одновременный запуск двух экземпляров с разными конфигурациями.
1. Отключение стандартной службы nginx
Остановите стандартную службу nginx и отключите её автоматический запуск:
sudo systemctl disable --now nginxПроверьте состояние службы:
systemctl is-enabled nginx
systemctl is-active nginxОжидаемые значения — disabled и inactive соответственно.
2. Подготовка конфигурации, сертификата и UI
Создайте каталог nginx:
sudo mkdir -p /opt/Primo/nginx/wwwСкопируйте в него конфигурационный файл и файлы сертификата из комплекта поставки. Команды выполняются из каталога, в котором находятся эти файлы:
sudo cp nginx.linux.conf /opt/Primo/nginx/nginx.conf
sudo cp cert1.crt /opt/Primo/nginx/cert1.crt
sudo cp cert1.rsa /opt/Primo/nginx/cert1.rsa
sudo chmod 600 /opt/Primo/nginx/cert1.rsaСкопируйте содержимое дистрибутива UI в каталог /opt/Primo/nginx/www.
После копирования файл index.html должен находиться непосредственно в каталоге:
/opt/Primo/nginx/www/index.htmlУбедитесь, что рабочие процессы nginx имеют права на чтение файлов UI. Для каталогов и статических файлов обычно используются права 755 и 644 соответственно; применяйте их с учётом политики безопасности системы. Закрытый ключ cert1.rsa должен оставаться доступен только владельцу.
Примечание: перед запуском проверьте соответствие адресов, портов и путей в
nginx.confвашему окружению. Конфигурационный файл из комплекта поставки рассчитан на запуск с префиксом/opt/Primo/nginx/.
3. Установка и запуск службы Primo.Orchestrator.Nginx
Скопируйте системный unit-файл в каталог systemd:
sudo cp Primo.Orchestrator.Nginx.service /etc/systemd/system/Primo.Orchestrator.Nginx.serviceПеречитайте конфигурацию systemd и включите автоматический запуск службы:
sudo systemctl daemon-reload
sudo systemctl enable --now Primo.Orchestrator.NginxПроверьте состояние:
systemctl status Primo.Orchestrator.NginxОжидаемое состояние — active (running).
Unit-файл запускает nginx с явным указанием каталога /opt/Primo/nginx/ и конфигурационного файла. Перед запуском создаются каталоги logs и temp и проверяется конфигурация nginx. При перезагрузке конфигурации также выполняется проверка; остановка службы производится штатным сигналом SIGQUIT.
4. Проверка работы
Убедитесь, что служба активна и веб-интерфейс Оркестратора доступен по адресу, указанному в конфигурации nginx.
При необходимости проверьте конфигурацию с теми же параметрами запуска, которые использует unit-файл:
sudo /usr/sbin/nginx -p /opt/Primo/nginx/ -c nginx.conf -tЕсли проверка завершилась с ошибкой, исправьте конфигурацию и повторите проверку до перезапуска службы.
Особенности запуска от root
- Главный процесс nginx работает от
root; рабочие процессы — от пользователя, определённого настройками nginx или сборки (например,nobody). - Для рабочих процессов должны быть доступны для чтения файлы интерфейса в
/opt/Primo/nginx/www. - При запуске от
rootnginx может прослушивать привилегированные порты ниже1024, в том числе443. - Не запускайте nginx командой
systemctl start nginx: для конфигурации Оркестратора используйтеPrimo.Orchestrator.Nginx.