21

Supervisord を含む自動展開を試みており、デフォルトの設定パスで混乱しています。

また、 apt -get を介してスーパーバイザー パッケージをインストール/etc/supervisor/supervisor.conf/etc/supervisor/conf.d/た後、このパスは構成例によって実際に満たされます。

このでは、フローは次のようになり、リンクや作成は次のようになります/etc/supervisor.conf

sudo('apt-get -y install supervisor')
put('config/supervisor_gunicorn.conf', '/etc/supervisor/conf.d/gunicorn.conf', use_sudo=True)
sudo('supervisorctl reload')

ただし、このパスではデフォルトとして指定されておらず、マニュアルで指定されているようsupervisorctlに、デフォルトの場所はどこかにあると想定されています/etc/supervisor.conf

あらゆる方法でスーパーバイザーをインストールしようとしましたが、結果が得られません。

これがほんの些細なことであることは承知していますが、配備スキームを適切に維持するために、あなたの支援に非常に感謝しています.

4

3 に答える 3

30

通常、デフォルトのファイルは実際/etc/supervisor.confには./etc/supervisor/supervisor.conf

--- supervisor-3.0a8.orig/src/supervisor/options.py
+++ supervisor-3.0a8/src/supervisor/options.py
@@ -105,7 +105,7 @@
     def default_configfile(self):
         """Return the name of the found config file or raise. """
         paths = ['supervisord.conf', 'etc/supervisord.conf',
-                 '/etc/supervisord.conf']
+                 '/etc/supervisor/supervisord.conf', '/etc/supervisord.conf']
         config = None
         for path in paths:
             if os.path.exists(path):

したがって、そのパッチを使用すると、スーパーバイザーはsupervisord.confローカル ディレクトリ、etc/サブディレクトリ、次にグローバル/etc/supervisor/および/etc/ディレクトリを検索します。

supervisord.confDebian によってインストールされるデフォルトのファイルには、最後に次のようなものがあります。

[include]
files = /etc/supervisor/conf.d/*.conf

conf.dこれにより、supervisord はディレクトリに置かれた余分なファイルをロードします。

于 2012-09-01T08:44:19.297 に答える
9

pip 経由でスーパーバイザーをインストールした可能性があるため、パッチが適用されていないバージョンが .

/usr/local/lib/python2.7/dist-packages/supervisor/

でパッチが適用されたバージョンよりも優先されます

/usr/lib/pymodules/python2.7/supervisor

パッチの詳細については、Martjin の回答を参照してください。簡単な解決策は次のとおりです。

pip uninstall supervisor

部分的にしかインストールされていない場合は、パッケージのインストールを再実行します。

apt-get install supervisor

また、あなた/etc/supervisor/supervisord.confが存在することを確認してください。そうでない場合は、手動で再作成する必要がある場合があります。私の場合は次のようになります。

; supervisor config file

[unix_http_server]
file=/var/run//supervisor.sock   ; (the path to the socket file)
chmod=0700                       ; sockef file mode (default 0700)

[supervisord]
logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log)
pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
childlogdir=/var/log/supervisor            ; ('AUTO' child log dir, default $TEMP)

; the below section must remain in the config file for RPC
; (supervisorctl/web interface) to work, additional interfaces may be
; added by defining them in separate rpcinterface: sections
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[supervisorctl]
serverurl=unix:///var/run//supervisor.sock ; use a unix:// URL  for a unix socket

; The [include] section can just contain the "files" setting.  This
; setting can list multiple files (separated by whitespace or
; newlines).  It can also contain wildcards.  The filenames are
; interpreted as relative to this file.  Included files *cannot*
; include files themselves.

[include]
files = /etc/supervisor/conf.d/*.conf
于 2016-02-28T01:13:17.433 に答える