在 docker-compose yml 中重用变量

vog*_*ash 6 docker docker-compose

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

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

version: '2'

services:
  db:
    image: example/db
  backend:
    image: example/server
  frontend:
    image: example/gui
Run Code Online (Sandbox Code Playgroud)

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

version: '2'

variable version=1.0.1

services:
  db:
    image: example/db:$version
  backend:
    image: example/server:$version
  frontend:
    image: example/gui:$version
Run Code Online (Sandbox Code Playgroud)

第二个例子是错误的,但它表明了我需要我想要实现的目标

小智 6

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

在此输入图像描述

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

在此输入图像描述

代表${..}一个变量.env