繁体   English   中英

docker-compose.yaml 内 docker 存储库的变量

[英]Variable for docker repository inside docker-compose.yaml

有没有办法在docker-compose.yaml中为 docker 存储库名称添加一个变量? 或者在图像名称之外声明存储库的任何其他方式?

我在 AWS ECR 存储库中有几个 docker 容器,并且 docker-compose 文件包含几个声明,例如:

image: <account>.dkr.ecr.<region>.amazonaws.com/<image>:latest

我只想声明一次<account>.dkr.ecr.<region>.amazonaws.com以尽量减少在其他账户中部署或将图像移动到其他存储库所需的更改。

提前谢谢了!

是的,您可以在与 docker-compose.yaml 相同的文件夹中的.env文件中定义它

.env

ACCOUNT=myaccount
REGION=myregion
IMAGE=niceimage
VERSION=latest

docker-compose.yaml

...
image: ${ACCOUNT}.dkr.ecr.${REGION}.amazonaws.com/${IMAGE}:${VERSION}

除非您需要 docker 中的 .env 变量,否则您不需要指定 env_file =.env。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM