Heroku建议使用以下Procfile命令启动Puma on Rails 5安装程序:
web: bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}
一开始我以为3000是默认值,但实际上如果开发中缺少PORT
,foreman使用端口5000。
**问题:**表示法${VARIABLE:-3000}
是什么意思?
--
**更新:**看起来Puma是罪魁祸首:Foreman/Puma isn't using the specified port in dev env
1条答案
按热度按时间x6h2sr281#
这是
VARIABLE
的默认值。使用默认值。如果参数未设置或为空,则替换单词的扩展。否则,替换参数的值。
来源:https://www.gnu.org/software/bash/manual/bash.html#Shell-Parameter-Expansion
在这种情况下,如果没有设置
PORT
变量,则它的值将是3000
,类似地,如果没有设置RACK_ENV
,则它将是development
。