我希望完全理解我在堆栈溢出时找到的Procfile解决方案。从本质上讲,我不介意复制和粘贴代码,但我也想了解它。任何额外的资源都非常受欢迎!
我已经在下面进一步复制了我的Procfile(单行),并且我还编写了我想要了解的关键组件。
web: bundle exec ruby -S puma -t 5:5 -p %PORT% -e development
(1) (2) (3) (4)(5) (6) (7)
Heroku解释部分(1)和(2)如下:
<process type>: <command>
第(3)部分是使用哪个Web服务器,在本例中是puma(及其线程)
但是部分(4): - t,(5):5:5,(6):%PORT%,和(7):发展让我难过。感谢您的帮助!
答案 0 :(得分:1)
第4和第5部分属于一起(-t 5:5
)并指定Puma的thread pool。数字是要运行的最小和最大线程数,因此在您的情况下,两者都设置为5。
6:我不完全确定这会让人感到困惑,但它是运行应用程序服务器的端口。 Heroku在您的应用服务器前面有自己的路由/代理基础设施。
7:应用程序运行的Rails环境。在特定情况下,作者希望以development
模式运行它,而不是标准production
。