• 如何导出docker镜像(导出docker镜像的命令)
  • 发布于 2个月前
  • 267 热度
    0 评论
  • 双人剧
  • 0 粉丝 24 篇博客
  •   
利用docker save命令可以将从本地镜像导出为一个打包 tar文件,然后复制到其他服务器进行导入使用
格式:
docker save [OPTIONS] IMAGE [IMAGE...]
Options:
  -o, --output string   Write to a file, instead of STDOUT

#说明:
Docker save 使用IMAGE ID导出,在导入后的镜像没有REPOSITORY和TAG,显示为<none>
常见用法:
docker save -o /path/file.tar IMAGE1 IMAGE2 ...
docker save IMAGE1 IMAGE2 ... > /path/file.tar
范例: 导出指定镜像
[root@rocky8 ~]$ docker save alpine:latest -o alpine.tar
[root@rocky8 ~]$ scp alpine.tar 10.0.0.100:
范例: 导出所有镜像至不同的文件中
[root@rocky8 ~]$ docker images | awk 'NR!=1{print $1,$2}'|while read repo tag;do docker save $repo:$tag -o /opt/$repo-$tag.tar;done

[root@rocky8 ~]$ ll /opt/*.tar
-rw------- 1 root root   7347200 Jan 13 20:04 /opt/alpine-latest.tar
-rw------- 1 root root     24064 Jan 13 20:04 /opt/hello-world-latest.tar
-rw------- 1 root root 145905152 Jan 13 20:04 /opt/nginx-latest.tar
-rw------- 1 root root 121435136 Jan 13 20:04 /opt/rockylinux-9-minimal.tar
-rw------- 1 root root  75167744 Jan 13 20:04 /opt/ubuntu-focal-20221130.tar
范例:导出所有镜像到一个打包文件
#堆代码 duidaima.com
#方法1: 使用image ID导出镜像,在导入后的镜像没有REPOSITORY和TAG,显示为<none>
docker save `docker images -qa` -o /opt/all.tar

#方法2:将所有镜像导入到一个文件中,此方法导入后可以看REPOSITORY和TAG
docker save $(docker images | awk 'NR!=1{print $1":"$2}') -o all-tags.tar

#方法3:将所有镜像导入到一个文件中,此方法导入后可以看REPOSITORY和TAG
docker save $(docker image ls --format "{{.Repository}}:{{.Tag}}") -o all-tags.tar

总结:

本文主要讲述了如何利用docker save命令来导出docker镜像,并给出了几种常见的导出docker镜像案例,希望对于那些还不懂怎么导出docker镜像的同学有所帮助。

用户评论