有两篇文章描述了环境变量的使用,但我的用例不同。
我有docker-compose文件,其中我有3-7个容器。要视情况而定。
version: '2'
services:
db:
image: example/db
backend:
image: example/server
frontend:
image: example/gui现在,在上面的示例中,我的所有镜像都将使用最新版本,但我想控制部署哪个版本,因此我想定义一些变量版本,并在所有镜像中使用它,如下所示:
version: '2'
variable version=1.0.1
services:
db:
image: example/db:$version
backend:
image: example/server:$version
frontend:
image: example/gui:$version第二个示例是错误的,但它显示了我想要实现的需求
发布于 2019-07-09 23:29:28
在与docker-compose.yml相同的目录中,添加一个名为.env的环境文件,然后指定您的环境变量。

之后,将变量添加到docker-compose.yml中

${..}表示.env中的一个变量
发布于 2019-07-10 01:24:38
Docker-compose对变量使用了插值语法${variable},你在文件中遗漏了这一点。
version: '2'
services:
db:
image: example/db:${version}
backend:
image: example/server:${version}
frontend:
image: example/gui:${version}因此,只需将版本传递给docker-compose命令即可
version=1.13-alpine docker-compose uphttps://stackoverflow.com/questions/56955878
复制相似问题