利用Docker部署应用非常方便,随着镜像的更新,我们的应用也需要及时更新,这周就来简单给大家介绍三种更新Docker镜像的方法。
1、更新用Docker命令部署的应用
以halo博客为例子(方法通用),
第一步
利用docker ps命令确定容器的名字,
docker ps
这边圆圈圈起来的就是容器的名字啦。
Halo里面的容器名字就是halo
第二步
备份数据(重要),并停止容器
利用docker inspect 容器的名字找出你容器的映射到本地的文件路径,
图片里就是:
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面板,选择容器
第二步
选择需要更新的容器,点击Recreate,然后点击Pull latest images,最后点击Recreate
等待完成就ok了。
评论区