3
有點背景。我使用Supervisor來監控django-celery進程。我需要能夠設置virutalenv,然後啓動芹菜過程。在Supervisord中激活vitualenv
,我目前在做它的方式是,在supervisor.conf
文件我有
[program:celery]
command = /srv/worker.sh
stdout_logfile = /srv/supervisor.log
stderr_logfile = /srv/supervisor.log
然後在worker.sh
我
/bin/su - username -c "source /srv/virtualenvs/bin/activate; python /srv/manage.py celeryd
這工作排序。問題是,當我與主管supervisorctl stop celery
它不會殺死工人。他們依然存在。我在想,如果我能夠在主管內激活virtualenv,那麼一切都會比放入shell腳本更好。
這是沒有必要爲'源斌/ activate'一個virtualenv中運行的東西。只需使用virtualenv的python即可運行。例如:'/ srv/virtualenvs/bin/python/srv/manage.py' –
檢出https://github.com/mher/celery-deploy。它用supervisord管理celeryd進程。 – mher