root@dev-demo-karl:/srv/www# supervisord -v
3.3.1
Попытка добраться supervisorctl
работа:
root@dev-demo-karl:/srv/www# supervisorctl
http://localhost:9001 refused connection
Моя конфигурация:
[supervisord]
nodaemon=true
[supervisorctl]
По-видимому, существуют обязательные поля для конфигурационного файла для версии 3.0 и вверх , http://supervisord.org/configuration.html
[inet_http_server]
требуется:
А TCP host:port значение или (например, 127.0.0.1:9001), на котором супервизор прислушается к запросам HTTP/XML-RPC. supervisorctl будет использовать XML-RPC для общения с supervisord по этому порту. Для слушания во всех интерфейсах в машине используйте:9001 или *:9001.
Значение по умолчанию: Никакое значение по умолчанию.
Необходимый: Да.
Представленный: 3.0
Также [rpcinterface:supervisor] требуется, как он жалуется.
, Таким образом, моя конфигурация должна быть похожей так:
[supervisord]
nodaemon=true
[supervisorctl]
[inet_http_server]
port = 127.0.0.1:9001
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
Теперь это соединяется.
Сначала необходимо запустить supervisord
с -c
флаг и указать на cfg файл.
sudo supervisord -c /path/to/config/file
после того выполнения supervisorctl
Попытка работать supervisord
с sudo
для проверки это не проблема перед миссией. Если все работает правильно, можно запустить приложение без sudo
.
-c
флаг может быть необходим с supervisorctl
также, если я помню корректный, но я не уверен его необходимое.
Обязательно проверьте следующее, если Вы добираетесь http://localhost:9001 refused connection
ошибка.
supervisord
работаетИмейте они включили (непрокомментированный) в supervisord.conf
файл:
a)
[inet_http_server]
port=127.0.0.1:9001
b)
[supervisorctl]
serverurl=http://127.0.0.1:9001
c)
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
Примечание: Хост и порт inet сервера и того, с которым supervisorctl пытается соединиться, должны быть тем же.
По умолчанию inet_http_server выключен в конфигурации супервизора. Необходимо включить если, если существуют или добавляют следующие строки, если это не делает
[inet_http_server] порт = 127.0.0.1:9001
Затем перезапуск Supervisord; Вы должны быть все установлены sudo supervisorctl status
должен показать процессы с соответствующими состояниями