Maneira recomendada para iniciar o supervisord a partir do script bash não-root?

1

Eu configurei o supervisor para monitorar alguns processos. Como eu implemento via script remoto, preciso de uma maneira de enviar comandos de início / parada do supervisor sem o sudo. Não sei como fazer isso.

Existe uma maneira no supervisor de executar comandos especificados como um usuário não root?

    
por user1561108 01.12.2012 / 20:27

1 resposta

7

O comando supervisorctl pode ser executado como um usuário não raiz. Tudo o que você precisa fazer é dar permissão para se conectar ao processo supervisord .

Você precisará configurar o acesso na seção apropriada do servidor, portanto, no [unix_http_server] seção ou na [inet_http_server] seção , o que você estiver usando para o seu supervisord setup.

Se você usar o [unix_http_server] setup, adicione as diretivas chmod e / ou chown para controlar quem pode acessar o soquete do domínio UNIX, por exemplo:

[unix_http_server]
chown = youruser

para que youruser possa gravar nesse soquete, o que significa supervisorctl pode enviar comandos supervisord . Você também pode adicionar um grupo:

[unix_http_server]
chown = youruser:yourgroup

Por fim, você terá que reiniciar supervisord com service supervisor restart

    
por 01.12.2012 / 20:34