我想让我的应用程序知道它在哪个镜像版本上运行。
这个想法是将 Docker 镜像标记作为环境变量传递到镜像中。但是我不想一直更改图像行和 ENV 变量行中的版本号。
例子:
version: "3"
VERSION=0.2.3
services:
app:
image: myimage:$VERSION
environment:
- APPLICATION_VERSION:$VERSION
是否可以声明变量以便一起更新所有值,或者是否有其他可用的解决方案?
最佳答案
您不能在 docker-compose.yml
中定义 $VERSION
。
您有两种选择:
- 在
.env
文件中定义它 - 在运行
docker-compose
命令时作为命令行参数发送。例如VERSION=0.2.3 docker-compose up -d
关于variables - 在 docker-compose 中声明变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48053286/