/ / Procfileで複数のワーカーを起動する(開発環境とHeroku) - Ruby-on-Rails、Heroku、Delayed Job、Foreman

Procfile(開発環境対Heroku)で複数の作業者を起動する - Ruby-on-Rails、heroku、delayed-job、foreman

次のような簡単なProcfileがあります。

web: bundle exec rails server thin -p $PORT
worker: bundle exec rake jobs:work

Herokuでは、これはN個のワーカータスクを起動します。Nは、私が拡大縮小したものです。

私の開発システムでは、

$ foreman start

1つのワーカータスクのみを起動します。 3人のワーカーを起動したい場合は、次のようなProcfileが必要です。

web: bundle exec rails server thin -p $PORT
worker: bundle exec rake jobs:work
worker: bundle exec rake jobs:work
worker: bundle exec rake jobs:work

これはやや不思議な質問ですが、私の開発環境を私のHeroku環境のように振る舞いたいのですが、Nワーカータスクを起動する最良の方法は何ですか?(例えば)Procfile_localを作成してそれを使用するための承認された方法はありますか? foreman -f Procfile_local

回答:

回答№1は14

ああ。だれがオンラインがあることを推測したであろう 職長のmanページ? ;)

foreman start --concurrency="web=0,worker=6"

トリックはうまくいきますか。別途Procfileを用意する必要はありません。


回答№2の場合は3

最新の職長は、このオプションの名前をに変更しました。 --formation.

っていうことは:

foreman start --formation="web=1,worker=2"

ソース