我是第一次在 Rails 上使用工头宝石。我正在Rails 3.2,Ruby 1.9.3和Foreman 0.6上运行一个应用程序。我想知道当我竞选工头时幕后会发生什么。具体来说,在我的本地终端上运行foreman run rails s
与foreman start
之间的区别。
我已经注意到一些差异。例如,工人仅在运行foreman start
时运行,而不是在我运行时运行foreman run rails s
.但我想知道具体情况。在哪里可以阅读更多关于这个的信息,或者有人可以解释它是如何工作的?
请参阅 http://ddollar.github.io/foreman/
foreman start
用于直接从命令行运行应用程序。 如果没有传递其他参数,则 foreman 将运行 Procfile 中定义的每种流程类型的一个实例。
foreman run
用于使用与定义的进程相同的环境运行一次性命令。
run
很有用,因为您的应用程序可能依赖于 Foreman 加载的.env
文件中定义的环境变量,即使在运行单个进程时也会出现哪些新变量。 start
允许您运行复杂的应用程序环境,该环境需要多个进程才能完全正常运行(例如,除了 Web 服务器之外,还有后台作业处理)。