docker-compose 更新镜像 发表于 2022-01-08 | 分类于 k8s | 暂无评论 项目迭代发布新版本的时候,需要重新构建业务镜像,重新运行docker容器。 老方法: ```shell docker pull 新镜像名 docker stop 容器名 docker rm 容器名 docker rmi 业务镜像名 docker run -d --name 容器名 -p 对外端口:内部端口 新镜像名 ``` 使用docker-compose方法: 配置好docker-compose.yml 文件,然后 ```shell docker-compose pull docker-compose up -d ``` 文档 https://docs.docker.com/compose/reference/up/ ```shell docker-compose up --build 作用:在启动服务之前重新构建镜像 检查 Dockerfile 是否有变化 如果有变化则重新构建镜像 只重建有变化的镜像 构建完成后,基于新镜像启动容器 适用场景:修改了 Dockerfile、requirements.txt 等构建文件后 docker-compose up --force-recreate 作用:强制重新创建容器(即使配置没变化) 不会重新构建镜像 强制停止并重新创建所有容器 使用现有的镜像创建新容器 适用场景:环境变量、配置文件等运行配置有变化,或者需要干净的容器状态 组合使用 docker-compose up --build --force-recreate 作用:先重新构建镜像,然后强制重新创建容器 先执行 --build 逻辑 再执行 --force-recreate 逻辑 最彻底的更新方式 ``` 参考: >https://www.cnblogs.com/yyee/p/12954995.html