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