首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dockerfile中带有双星号的环境变量

问Dockerfile中带有双星号的环境变量
EN

Stack Overflow用户
提问于 2015-04-18 14:13:55
回答 1查看 785关注 0票数 5

我注意到,在某些Dockerfile中,环境变量是使用特定表达式指定的,这些表达式执行某种类型的变量替换,例如:

代码语言:javascript
复制
ENV PASSWORD **Random**
ENV NAME **False**

我在码头正式文件中找不到任何提及这些说法的地方。

在这里,我可以找到一个可以在Dockerfile中使用的可能表达式的列表,它们的含义是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-18 17:44:05

使用这些变量作为模板变量是非官方惯例。它们将在运行时被替换。

或者您可以使用-e的docker run开关来替换它们。

例如:

代码语言:javascript
复制
ENV MYSQL_USER admin
ENV MYSQL_PASS **Random**

# Replication ENV
ENV REPLICATION_MASTER **False**
ENV REPLICATION_SLAVE **False**

如果您查看start脚本,您可以看到以下内容:

代码语言:javascript
复制
if [ "$MYSQL_PASS" = "**Random**" ]; then
    unset MYSQL_PASS
fi

PASS=${MYSQL_PASS:-$(pwgen -s 12 1)}

如果变量值是**Random**,那么让我们用随机生成的密码替换它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29718483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档