Docker的镜像 导出导入
查看当前已经安装的镜像
vagrant@vagrant:~$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 5.7.22 6bb891430fb6 11 months ago 372MB
导出镜像
sudo docker save [IMAGE ID] > [filename].tar
如导出上面的列出的mysql 镜像
sudo docker save 6bb891430fb6 > mysql5722.tar
导入镜像
sudo docker load --input [filename].tar
如 导入刚才导出的mysql5722.tar
镜像
sudo docker load --input mysql5722.tar
导入镜像之后,通过sudo docker images
,发现导入的镜像的REPOSITORY
和TAG
都是<none>
,使用 tag
命令,给 导入的镜像设定REPOSITORY
和TAG
,
发现同一个 导出镜像的IMAGE ID
和导入镜像的IMAGE ID
是一样的,所以可以通过导出之前的sudo docker images
的列表,给导入的镜像设置一样的REPOSITORY
和TAG
sudo docker tag [IMAGE ID] [REPOSITORY]:[TAG]
如: 上面列出的 mysql
镜像,导入镜像之后,设REPOSITORY
和TAG
sudo docker tag 6bb891430fb6 mysql:5.7.22
题外话:在国内的网络中,如果无法安装到一个镜像(使用了国内镜像之后或者重试很多次都是超时的情况下),可以在另外一个能访问到不能安装镜像包的主机先把镜像下好,然后导出,下载到本地,再导入使用 😄
References
- Docker images导出和导入 讲的很详细
- docker images 导入导出 导入导出的命令,一看就会了 😄