Ruby on rails 由Foreman产生的杀戮过程

Ruby on rails 由Foreman产生的杀戮过程,ruby-on-rails,ruby,ruby-on-rails-3,foreman,procfile,Ruby On Rails,Ruby,Ruby On Rails 3,Foreman,Procfile,我有以下Procfile: web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb redis: bundle exec redis-server /usr/local/etc/redis.conf worker: bundle exec sidekiq 运行$foreman start启动Unicorn、Redis和Sidekiq,但我应该如何再次阻止它们 杀了Foreman,三个人都被杀了。我可以使用ps看到这一点: $ ps au

我有以下
Procfile

web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
redis: bundle exec redis-server /usr/local/etc/redis.conf
worker: bundle exec sidekiq
运行
$foreman start
启动Unicorn、Redis和Sidekiq,但我应该如何再次阻止它们

杀了Foreman,三个人都被杀了。我可以使用
ps
看到这一点:

$ ps aux | grep redis | grep -v grep
    me           61560   0.0  0.0  2506784   1740 s000  S+    9:36am   0:01.28 redis-server /usr/local/etc/redis.conf
$ ps aux | grep sidekiq  | grep -v grep
    me           61561   0.0  1.0  2683796 173284 s000  S+    9:36am   0:14.18 sidekiq 2.17.0 pathways [0 of 25 busy]
$ ps aux | grep unicorn | grep -v grep
    me           61616   0.0  0.2  2615284  28312 s000  S+    9:37am   0:00.06 unicorn worker[2] -p 5000 -c ./config/unicorn.rb
    me           61615   0.0  0.2  2615284  27920 s000  S+    9:37am   0:00.06 unicorn worker[1] -p 5000 -c ./config/unicorn.rb
    me           61614   0.0  0.2  2615284  27772 s000  S+    9:37am   0:00.06 unicorn worker[0] -p 5000 -c ./config/unicorn.rb
    me           61559   0.0  1.0  2615284 160988 s000  S+    9:36am   0:09.87 unicorn master -p 5000 -c ./config/unicorn.rb

很明显,我可以手动
杀死
每个进程,但我如何能一次杀死所有进程?看来Foreman并不支持这一点。

我不确定Foreman是否支持这一点。我这样使用它:


web:subcontract--rbenv'1.9.3-p362'--chdir../website--signal INT--bundle exec thin start-p 3000

用一行代码杀死所有人:

$ kill $(ps aux | grep -E 'redis|sidekiq|unicorn' | grep -v grep | awk '{print $2}')
或者你可以这样做

$ killall "foreman: master"

非常感谢。这让我意识到rails端口并不是我需要杀死的唯一端口!