Docker 中有两个命令可以将镜像导出为本地文件系统中的 tar 文件:
docker save
和docker export
。尽管它们的作用类似,但它们之间有一个重要的区别。
docker save
的使用示例:
docker save -o test.tar image_name
docker export
的使用示例:
docker export container_name > test.tar
docker save
命令会将整个镜像及其所有的层保存为一个 tar 文件,包括镜像的元数据和配置信息。可以将这个 tar 文件用于在其他主机上加载镜像,或将其推送到 Docker Registry 中。
docker export
命令指挥导出容器的文件系统,不包括镜像的元数据和配置信息。它可以将容器的文件系统保存为一个 tar 文件,可以用于备份或共享容器的文件系统,但不能用于创建新的镜像。
使用 docker save
命令导出的 tar 文件可以使用 docker load
命令导入到 Docker 中,以创建一个新的镜像。导出的 tar 文件包括完整的镜像层级结构和镜像元数据。
使用 docker export
命令导出的 tar 文件可以使用 docker import
命令导入到 Docker 中,以创建一个新的镜像。但是,导入的镜像不包括原始镜像的任何元数据或配置信息。它只是简单地创建了一个包含容器文件系统的新镜像,该镜像可以用于创建新容器。
综上所述,可以根据具体需要选择 docker save
或 docker export
命令:
docker save
命令;docker export
命令。Docker学习(十九)什么是镜像的元数据?