我正在使用docker-compose,我希望我的env_file具有变量替换.我想在文件中定义一个变量,然后在其他变量中使用它:
APP_ENV=dev-foo
LOCALPATH=/tmp/builddir/${APP_ENV}
GIT_URL=git@github.com:some-org/${APP_ENV}
Run Code Online (Sandbox Code Playgroud)
env_file中支持的变量替换形式是什么?
env_file 中不支持变量替换。
您的选择是:
environment:部分使用变量(尽管您将无法执行您的示例,因为在中设置值environment仅针对容器环境设置它,并且替换发生在主机上)。LOCALPATH=:)来使用主机变量,它可能位于 env_file 或 environment 部分。docker compose现在支持变量替换
语法类似于 shell 替换。
${VAR} -> value of VAR
Run Code Online (Sandbox Code Playgroud)
${VAR:-default} -> value of VAR if set and non-empty, otherwise default
${VAR-default} -> value of VAR if set, otherwise default
Run Code Online (Sandbox Code Playgroud)
${VAR:?error} -> value of VAR if set and non-empty, otherwise exit with error
${VAR?error} -> value of VAR if set, otherwise exit with error
Run Code Online (Sandbox Code Playgroud)
${VAR:+replacement} -> replacement if VAR is set and non-empty, otherwise empty
${VAR+replacement} -> replacement if VAR is set, otherwise empty
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1011 次 |
| 最近记录: |