首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在docker-compose yml中重用变量

在docker-compose yml中重用变量
EN

Stack Overflow用户
提问于 2019-07-09 23:23:22
回答 2查看 551关注 0票数 1

有两篇文章描述了环境变量的使用,但我的用例不同。

我有docker-compose文件,其中我有3-7个容器。要视情况而定。

代码语言:javascript
运行
复制
version: '2'

services:
  db:
    image: example/db
  backend:
    image: example/server
  frontend:
    image: example/gui

现在,在上面的示例中,我的所有镜像都将使用最新版本,但我想控制部署哪个版本,因此我想定义一些变量版本,并在所有镜像中使用它,如下所示:

代码语言:javascript
运行
复制
version: '2'

variable version=1.0.1

services:
  db:
    image: example/db:$version
  backend:
    image: example/server:$version
  frontend:
    image: example/gui:$version

第二个示例是错误的,但它显示了我想要实现的需求

EN

回答 2

Stack Overflow用户

发布于 2019-07-09 23:29:28

在与docker-compose.yml相同的目录中,添加一个名为.env的环境文件,然后指定您的环境变量。

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

${..}表示.env中的一个变量

票数 1
EN

Stack Overflow用户

发布于 2019-07-10 01:24:38

Docker-compose对变量使用了插值语法${variable},你在文件中遗漏了这一点。

代码语言:javascript
运行
复制
version: '2'

services:
  db:
    image: example/db:${version}
  backend:
    image: example/server:${version}
  frontend:
    image: example/gui:${version}

因此,只需将版本传递给docker-compose命令即可

代码语言:javascript
运行
复制
version=1.13-alpine docker-compose up
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56955878

复制
相关文章

相似问题

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