2011-07-12 58 views
3

我是個開始芹菜如何開始在終端的背景芹菜在Django

python manage.py celeryd 

這是工作,但在前臺。然後測試我需要啓動另一個終端並在那裏做東西的命令。

有什麼辦法可以在後臺啓動。我想這

python manage.py celeryd & 

但話又說回來它是在前臺

回答

11

您正在尋找celeryd_detach,可因爲至少2.4

python manage.py celeryd_detach 
+0

它的工作,但它是與運行celeryd。爲什麼使用芹菜拍。從現在起我應該使用celeryd還是celeryd_detach。我想在啓動時運行它 – user825904

+0

'celeryd'更適合開發,因爲你可以看到它的輸出。我在終端應用程序的標籤中運行芹菜,而我的編輯器在另一個標籤中。至於'celerybeat',我會看看文檔。 http://ask.github.com/celery/reference/celery.bin.celerybeat.html –

+3

一旦你改變你的代碼,你如何用這種方法乾淨地重啓'celery'? – user

2

你可以用它來獲取celeryd工作中背景

$ nohup celeryd start & 

上述命令將芹菜守護進程推到 背景。

2

你可以試試「主管」。在項目中安裝「django-supervisor」,在manage.py所在的文件夾中創建一個supervisor.conf。

那麼,你只要運行:

python manager.py supervisor --daemonize 

我supervisor.conf:

[program:celeryd] 
command={{ PYTHON }} {{ PROJECT_DIR }}/manage.py celeryd -l info 
autostart=true 
autorestart=true 
stopwaitsecs = 600 

[program:autoreload] 
exclude=true 
[program:runserver] 
exclude=true 
[program:celerybeat] 
exclude=true