Отказано в соединении с django-supervisor

Я использую supervisor для запуска сельдерея с django 1.8.8. настроить. также используя django-supervisor==0.3.4 supervisor==3.2.0

но когда я перезапускаю все процессы, я получаю

unix:///tmp/supervisor.sock refused connection

не в состоянии перезапустить какие-либо процессы,

python manage.py supervisor --config-file=setting/staging_supervisor.conf --settings=setting.staging_settings restart all

файл конфигурации супервизора

[supervisord]
    logfile_maxbytes=10MB                                                       ; maximum size of logfile before rotation
    logfile_backups=3                                                           ; number of backed up logfiles
    loglevel=warn                                                               ; info, debug, warn, trace
    nodaemon=false                                                              ; run supervisord as a daemon
    minfds=1024                                                                 ; number of startup file descriptors
    minprocs=200                                                                ; number of process descriptors
    childlogdir=/logs/                    ; where child log files will live

    [program:celeryd_staging]
    environment=PATH="{{ PROJECT_DIR }}/../../bin"
    command={{ PYTHON }} {{ PROJECT_DIR }}/manage.py celeryd -l info -c 1 --logfile=/logs/staging-celeryd.log --settings=setting.staging_celery_settings
    redirect_stderr=false

    [program:celerybeat_staging]
    environment=PATH="{{ PROJECT_DIR }}/../../bin"
    command=/{{ PYTHON }} {{ PROJECT_DIR }}/manage.py celerybeat --loglevel=INFO --logfile=/logs/staging-celerybeat.log --settings=setting.staging_celery_settings
    redirect_stderr=false

    [group:tasks]
    environment=PATH="{{ PROJECT_DIR}}/../../bin"
    programs=celeryd_staging,celerybeat_staging

    [program:autoreload]
    exclude=true

    [program:runserver]
    exclude=true

2 ответа

Получил решение. Процесс супервизора не был перезагружен, поскольку супервизор был в моей виртуальной среде, так как я использую пакет django-supervisor.

как только я перезагрузил процесс супервизора, ошибка отклоненного соединения исчезла.

Убедитесь, что другого уже нет /tmp/supervisor.sock принадлежит другому пользователю, кроме вас (например, root или что-то).

если нет проблем с разрешениями, добавьте это в вашу конфигурацию супервизора:

[unix_http_server]
file = /tmp/supervisor.sock ;
chmod=0700 ;

[rpcinterface:supervisor]
supervisor.rpcinterface_factory =
supervisor.rpcinterface:make_main_rpcinterface

это также может быть полезно для вас: https://github.com/Supervisor/supervisor/issues/480

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