小编典典

如何使用 docker-compose 更新现有图像?

all

我有多个微服务,并且正在使用 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


阅读 74

收藏
2022-08-27

共1个答案

小编典典

Docker 容器被设计为短暂的。要更新现有容器,请删除旧容器并启动新容器。因此,您所遵循的过程是正确的。

您可以将命令简化为以下命令:

docker-compose up --force-recreate --build -d
docker image prune -f
2022-08-27