Рекомендованный способ запуска супервизора из некорневого 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

Другие вопросы по тегам