一、Docker镜像导出与导入
Docker镜像可以被导出为一个tar包,并可以通过Docker的import命令导入一个Docker镜像。
bash
docker save hello-world > hello-world.tar
docker load < hello-world.tar
上面的命令将hello-world镜像导出为一个tar包,并通过load命令导入
bash
docker tag <image> <new_image_name>
导入Docker镜像,并将其重命名为新的Docker镜像。
二、Docker容器导出导入镜像
bash
docker export <container_id> > container.tar
docker import container.tar < new_container:TAG
三、区别
- docker save images_name:将一个镜像导出为文件,再使用
docker load
命令将文件导入为一个镜像,会保存该镜像的的所有历史记录。比docker export
命令导出的文件大,很好理解,因为会保存镜像的所有历史记录 - docker export container_id:将一个容器导出为文件,再使用
docker import
命令将容器导入成为一个新的镜像,但是相比docker save
命令,容器文件会丢失所有元数据和历史记录,仅保存容器当时的状态,相当于虚拟机快照