${PORT:-3000}在Heroku过程文件中的含义是什么?

qvk1mo1f  于 2022-11-13  发布在  其他
关注(0)|答案(1)|浏览(89)

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

x6h2sr28

x6h2sr281#

这是VARIABLE的默认值。
使用默认值。如果参数未设置或为空,则替换单词的扩展。否则,替换参数的值。
来源:https://www.gnu.org/software/bash/manual/bash.html#Shell-Parameter-Expansion
在这种情况下,如果没有设置PORT变量,则它的值将是3000,类似地,如果没有设置RACK_ENV,则它将是development

相关问题