2010-02-18 119 views
13

我有基於django和芹菜的python服務器。 每次計算機重新啓動,apache2啓動,所以我的服務器正在工作,但我必須手動重啓芹菜(去我的項目目錄並執行「python manage.py celeryd」)。什麼是正確的生產解決方案?我的意思是,有沒有可能將芹菜作爲守護進程啓動?啓動時是否可以自動運行芹菜?

這裏http://github.com/ask/celery/tree/master/contrib/debian/init.d/我發現了兩個腳本,看起來應該在/etc/init.d/中,就像啓動apache2的apache2腳本一樣。但是我把它們放到了/etc/init.d/,因爲我沒有看到任何變化。

+0

在serverfault問其人。 – 2010-02-18 21:02:10

回答

13

你應該看看http://www.debian-administration.org/article/Making_scripts_run_at_boot_time_with_Debian

總之,與celeryd腳本/etc/init.d

$ update-rc.d celeryd defaults 
Adding system startup for /etc/init.d/celeryd ... 
    /etc/rc0.d/K20celeryd -> ../init.d/celeryd 
    /etc/rc1.d/K20celeryd -> ../init.d/celeryd 
    /etc/rc6.d/K20celeryd -> ../init.d/celeryd 
    /etc/rc2.d/S20celeryd -> ../init.d/celeryd 
    /etc/rc3.d/S20celeryd -> ../init.d/celeryd 
    /etc/rc4.d/S20celeryd -> ../init.d/celeryd 
    /etc/rc5.d/S20celeryd -> ../init.d/celeryd 
+0

謝謝,我會嘗試一下,那麼celerybeat呢?我是否也需要更新rc.d呢? – Graf 2010-02-21 11:23:58

+0

是的!記住只能運行它的一個實例! – asksol 2010-02-21 15:46:41

+1

哇!對我來說就像是一種魅力!不幸的是,我花了很多時間來找出我做錯了什麼(忘記了chmod 755這兩個腳本),但最後一切正常!感謝您的幫助,asksol! – Graf 2010-03-02 18:23:22

相關問題