跳到主要内容

docker save 命令

docker save 用于将一个或多个镜像保存到压缩的 tar 包文件中。这对于镜像的迁移、备份和在无 Docker Hub 或其他 registry的网络上分发镜像非常有用。

registry:在不同的教程中可能有多个称呼,比如 注册表、仓库、商店。

用法:

# 保存单个镜像到特定文件
docker save -o myimage.tar myimage:latest

# 保存多个镜像到指定文件
docker save -o myimages.tar myimage1:latest myimage2:latest

# 使用管道
docker save myimage:latest > myimage.tar

演示:

# 查看镜像(两个)
root@www.zxzsk.com:~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest b52e0b094bc0 2 weeks ago 192MB
mysql latest 5568fddd4f66 4 weeks ago 797MB

# docker save 导出镜像
root@www.zxzsk.com:~# docker save -o mysql-nginx.tar mysql:latest nginx:latest

# 导出到当前目录
root@www.zxzsk.com:~# ls -lh
total 964M
-rw------- 1 root root 964M Feb 25 08:10 mysql-nginx.tar

# 不会影响本机镜像
root@www.zxzsk.com:~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest b52e0b094bc0 2 weeks ago 192MB
mysql latest 5568fddd4f66 4 weeks ago 797MB