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]
は必須です:
スーパーバイザーがHTTP/XML-RPCリクエストをリッスンするTCP Host:port値または(127.0.0.1:9001など)。 SupervisorctlはXML-RPCを使用して、このポートを介してスーパーバイザと通信します。マシンのすべてのインターフェースでリッスンするには、: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
これで接続します。
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が接続しようとしているホストとポートは同じである必要があります。
最初にsupervisord
を-c
フラグで開始し、cfgファイルをポイントする必要があります。
Sudo supervisord -c /path/to/config/file
その後supervisorctl
を実行します
supervisord
でSudo
を実行して、これが事前の問題ではないことを確認してください。すべてが正常に機能する場合Sudo
なしでアプリを起動できます。
-c
フラグは、supervisorctl
と共に必要になる場合がありますが、正しいことを覚えている場合でも、必要かどうかはわかりません。
デフォルトでは、スーパーバイザ構成でinet_http_serverがオフになっています。存在する場合は有効にするか、存在しない場合は次の行を追加する必要があります
[inet_http_server]ポート= 127.0.0.1:9001
次に、Supervisordを再起動します。すべて設定されている必要がありますSudo supervisorctl status
は、対応するステータスのプロセスを表示する必要があります