2015-07-27 2 views
2

Я создал файл конф для супервизора внутри /etc/supervisor/conf.d/myproject-celery.confДжанго начать сельдерея демон в производстве с руководителем

Мой конфигурационный файл выглядит следующим образом:

[program:celery] 
command=/var/www/html/project/venv/bin/python /var/www/html/project/manage.py celeryd --loglevel=INFO 
environment=PYTHONPATH=/var/www/html/project 
directory=/var/www/html/project 
user=www-data 
numprocs=1 
stdout_logfile=/var/log/celeryd.log 
stderr_logfile=/var/log/celeryd.log 
autostart=true 
autorestart=true 
startsecs=10 
stopwaitsecs = 600 
priority=998 

Здесь, в моем Productin я хочу начать сельдерей. Для этого я делаю

supervisord -c /etc/supervisor/conf.d/myproject-celery.conf 

Когда я делаю это он говорит

Error: .ini file does not include supervisord section 

Что такое проблема здесь?

+0

Не загружайте файлы conf.d в качестве основного файла conf для супервизора. см. мой ответ ниже – Incognos

ответ

2

Похоже, вам не хватает тебя [supervisord] раздел в файле конфигурации, но это, вероятно, потому что вы не загружаете основной конф файл

см docs

Вы не должны начинать supervisord с -c и файл conf.d - файлы в этой папке обычно загружаются автоматически. Обычно -c зарезервирован для тех случаев, когда у вас есть conf, который вы создали в другом месте, отличном от обычного каталога.

Если вы начинаете supervisord без -c, он должен загрузить файл /etc/supervisor/supervisor.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 

, как вы можете видеть, он автоматически загружает все конфигурационные файлы в папке conf.d

+0

Вы имеете в виду, что я ничего не должен делать, файл myproject-celery.conf будет автоматически загружен и начнется сельдерей? – aryan

+0

Да, ваш основной файл conf должен иметь в качестве последней строки команду, которая загружает все файлы conf в каталоге conf.d. – Incognos

+0

Спасибо за ваш ответ. Как я могу узнать, что работает мой сельдерей? LIke python manage.py celeryd --loverver = INFO в локальном – aryan

Смежные вопросы