目 录CONTENT

文章目录

Docker更新容器镜像的三种方法

思维天空
2022-11-01 / 0 评论 / 0 点赞 / 13 阅读 / 566 字

利用Docker部署应用非常方便,随着镜像的更新,我们的应用也需要及时更新,这周就来简单给大家介绍三种更新Docker镜像的方法。

1、更新用Docker命令部署的应用

以halo博客为例子(方法通用),

第一步

利用docker ps命令确定容器的名字,
docker ps
image
这边圆圈圈起来的就是容器的名字啦。
Halo里面的容器名字就是halo

第二步

备份数据(重要),并停止容器
利用docker inspect 容器的名字找出你容器的映射到本地的文件路径,
image-1667313682293
图片里就是:

cp -r /root/data/docker_data/zfile/zfile/data /root/data/docker_data/zfile/zfile/data.backup

Halo里面就是:

cp -r ~/.halo ~/.halo.1.4.15  # 备份并重命名为.halo.1.4.15

第三步

拉取最新的容器镜像

docker pull halohub/halo:1.4.16
halohub/halo:1.4.16

这部分替换成你需要更新的镜像的名字和版本号
很多是类似这种xxxxx/xxxxx:latest

第四步

重新创建容器

docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:1.4.16

这部分的命令相信之前看过视频的小伙伴都保存在了自己对应文件夹下的config.txt文件里了,直接粘贴出来,修改最后面镜像的部分(这里是halohub/halo:1.4.16)重新部署就ok了。
参考来源:Halo官方文档

2、更新用Docker-compose部署的应用

很简单,只要三步。

第一步

进入到你docker-compose所在的文件夹下,执行

docker-compose pull

第二步

重启你的容器

docker-compose up -d --remove-orphans

第三步(可选)

删除掉旧的镜像

docker image prune 

3、直接利用Portainer更新

有安装Portainer的同学可以直接用Portainer来更新容器镜像。
Portainer的安装可以看这里:【Docker系列】Docker可视化面板——Portainer

第一步

登陆Portainer面板,选择容器
image-1667313649991

第二步

选择需要更新的容器,点击Recreate,然后点击Pull latest images,最后点击Recreate
等待完成就ok了。
image-1667313657612

0

评论区