$ {port:-3000}在Heroku copfile中意味着什么



heroku建议在Rails 5设置上启动PUMA的命令:

web: bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}

首先,我认为3000是一个默认值,但实际上,如果开发中缺少PORT,则实际上是使用端口5000。

问题:符号 ${VARIABLE:-3000}是什么意思?

-

更新:似乎PUMA是罪魁祸首:工头/PUMA不使用Dev Env

中的指定端口

VARIABLE的默认值。

使用默认值。如果参数不设置或零,则扩展单词被替换。否则,参数的值为取代。

来自:https://www.gnu.org/software/bash/manual/bash.html#shell-parameter-parameter-expansion

在这种情况下,如果未设置PORT变量,则其值将为3000,并且类似地,如果未设置RACK_ENV,则将为development

最新更新