收起左侧

Docker 镜像说没就没?教你一招本地永久保存老版本

1
回复
172
查看
[ 复制链接 ]

102

主题

357

回帖

665

牛值

共建版主

社区上线纪念勋章社区共建团荣誉勋章fnOS1.0上线纪念勋章飞牛百度网盘玩家

这两年,很多 Docker用户可能都有同样的感受,明明昨天还能正常用的镜像,今天一更新功能没了、接口没了,甚至直接删库跑路,尤其是一些“懂的都懂”的镜像,要么作者迫于压力大改功能,要么新版直接阉割收费,老版本却再也拉不下来,等你意识到“这个版本真香”的时候,往往已经来不及了

这时候,如果能在本地留一份可用的版本,就再也不用担心远端仓库删除或者版本更新,相比自建私有仓库或上传到 Docker Hub,最简单、最稳妥的做法就是把镜像直接导出成文件,保存到本地或者 NAS,只要文件在,无论何时何地,都能随时加载使用

因为飞牛没有镜像导出功能,所以接下来我将使用 飞牛Fnos系统 给大家演示一下怎么使用命令导出自己想要的镜像包到本地备份

导出镜像

以下操作需要使用终端工具通过 sudo -i 进入root权限后操作,直接使用应用中心的终端或者其他ssh工具就行

1️⃣查看镜像

使用命令行查看本地 镜像名:标签

# 查看所有镜像
docker images

蓝色部分就是 镜像名:标签 ,要导出那个就复制那个就行,蓝色部分整行都复制,比如 gdy666/lucky:latest

2️⃣导出镜像(保存为文件)

使用 docker save 命令,通过镜像名导出

docker save -o 保存路径/文件名.tar 镜像名:标签

示例

docker save -o /vol1/1000/备份镜像/lucky.tar gdy666/lucky:latest

导出后如下图

导入镜像

导入镜像也是使用终端工具通过sudo -i 进入root权限后操作

导入镜像tar镜像包

docker load -i 文件路径/文件名.tar

实例

docker load -i /vol1/1000/备份镜像/lucky.tar

导入之后去本地镜像顶部 刷新一下 就能展示出来了,然后就可以通过手动或者compose部署了

通过上述的操作,你熟悉的老版本就回来了,不依赖任何网络、不需要登录、不用担心仓库被删除。

Docker 给了我们极大的自由,但前提是,你要掌控镜像,而不是被镜像牵着走,与其哪天仓库消失再后悔,不如现在就把稳定版本打包保存,随时用都安心。

收藏
送赞 1
分享
公众号:知新坊

0

主题

3

回帖

0

牛值

江湖小虾

搭建个自建仓库不就完事了

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则