我有多个微服务,并且正在使用 docker-compose 进行开发部署。当微服务代码库发生一些变化时,我会触发 ci 作业以重新部署它们。我有下面的脚本来做到这一点。但是每次我必须从头开始构建所有图像,然后运行它们。在所有这些操作之后,我有 anonymous
图像。所以我使用最后一个脚本来删除它们。你有什么建议让这个过程更实用?有什么方法可以更新现有图像而不用新的更改将其删除?
- docker-compose build
- docker-compose down
- docker-compose up -d --force-recreate
- docker rmi $(docker images -f "dangling=true" -q) -f
附加信息:我正在使用 gitlab-ci
原文由 Efe 发布,翻译遵循 CC BY-SA 4.0 许可协议
Docker 容器被设计为短暂的。要更新现有容器,请删除旧容器并启动新容器。因此,您所遵循的过程是正确的。
您可以将命令简化为以下命令: