使用Procfile部署到dokku会干扰' dokku run'

时间:2015-01-31 13:51:33

标签: ruby-on-rails dokku procfile

我最近添加了dokku-shoreman插件和Procfile,以便我的应用在部署时同时运行worker Web进程。它看起来像这样:

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

但是,现在当我使用dokku run <app> <cmd>例如...rake db:migrate 时,服务器和工作人员开始运行

目前我知道如何运行worker的唯一方法是使用Procfile。部署后手动启动它并不是一个大问题 - 只有我不知道如何。

虽然理想仍然是让Procfiledokku run同时工作。

1 个答案:

答案 0 :(得分:3)

更新2 Dokku现在支持此http://dokku.viewdocs.io/dokku/deployment/process-management/

更新:结帐dokku-alt(不再维护)首先 - 它是我切换到的。

这是带有dokku的known issue

这是问题讨论中详述的temporary solution,对我有用:

  1. 将实际Procfile重命名为Procfile.real
  2. 使用以下内容创建新的Procfile

    web: bundle exec foreman start -f Procfile.real

  3. gem 'foreman'
  4. 中添加Gemfile作为dep
  5. 运行bundle install
  6. 提交Procfile*Gemfile*