2017-07-31 197 views
0

我在帶有rvm和乘客的rails開發環境中使用sidekiq。在應用程序啓動時自動啓動sidekiq(RoR)

在應用程序的啓動,我需要手動啓動Sidekiq:

bundle exec sidekiq --environment development -C sidekiq.yml 

是療法的方式來自動啓動它在App啓動或重新啓動(不啓動服務器)?

謝謝

回答

0

使用foreman寶石。通過工頭,您可以聲明您的應用程序需要在Procfile中運行的所有進程。

web: bundle exec puma -C config/puma.rb 
worker: bundle exec sidekiq --environment development -C sidekiq.yml 

foreman start命令啓動您的應用程序:

使用彪馬sidekiq請參見下面的應用程序的樣本Procfile定義。

+0

它是否也適合生產環境?使用乘客(也用於開發)我不啓動在美洲獅應用程序(與導軌s) – EffeBi

+0

是的。工頭可以用於生產。您可以將其合併到您的發佈工具(例如Capistrano)中,並在部署到生產環境時運行它。您可以用您使用的乘客命令替換puma命令。 – quajo

+0

看看這個[回答](https://stackoverflow.com/questions/11592798/use-different-procfile-in-development-and-production) 關於定義基於環境的不同Procfiles。 – quajo

相關問題