Рекомендованный способ запуска супервизора из некорневого bash-скрипта?
Я установил супервизор для мониторинга некоторых процессов. Поскольку я выполняю развертывание через удаленный скрипт, мне нужен способ отправлять команды запуска / остановки супервизора без sudo. Я не уверен, как это сделать, хотя.
Есть ли способ в супервизоре для запуска указанных команд от имени пользователя без полномочий root?
1 ответ
supervisorctl Команда может быть запущена как пользователь без полномочий root. Все, что вам нужно сделать, это дать ему разрешение на подключение к supervisord процесс.
Вам необходимо настроить доступ в соответствующем разделе сервера, поэтому в [unix_http_server] раздел или в [inet_http_server] раздел, который вы используете для вашего supervisord настроить.
Если вы используете [unix_http_server] настройки, вы бы добавили chmod и / или chown директивы для управления доступом к сокету домена UNIX, например:
[unix_http_server]
chown = youruser
чтобы youruser может написать в этот сокет, что означает supervisorctl может отправить supervisord команды. Вы также можете добавить группу:
[unix_http_server]
chown = youruser:yourgroup
Наконец, вам придется перезагрузить supervisord сам с service supervisor restart