Docker容器的导出与导入实操
1. 导出容器
在Docker中,若需将本地容器导出,可利用docker export命令。以下是具体的操作步骤:
[root@h30 ~]# docker export 8c39e8f09e6a > 11g.tar
使用命令检查文件大小:
[root@h30 ~]# du -h 11g.tar
6.2G 11g.tar
2. 导入容器快照
将容器快照文件重新导入为镜像,可以使用docker import命令。示例如下:
[root@h30 ~]# cat 11g.tar | docker import - oracle11g:v2
sha256:5eeae1ba9e945d7a6cf3d8bd265adc2f58caad056472bda0b96ddf335cb7f035
导入后,通过docker images查看所有镜像,包括新导入的镜像:
[root@h30 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
oracle11g v2 5eeae1ba9e94 16 minutes ago 6.54 GB
docker.io/python 3.5 e649f67bb435 2 months ago 688 MB
docker.io/hello-world latest e38bc07ac18e 3 months ago 1.85 kB
docker.io/sath89/oracle-ee-11g latest d079fa16c9a7 12 months ago 5 GB
docker.io/hansode/centos-6.5-x86_64 latest 2554988d635b 4 years ago 572 MB
也可通过指定URL或目录来导入镜像:
$ sudo docker import http://example.com/exampleimage.tgz example/imagerepo
3. docker save与docker export的区别
docker save和docker export虽然都与备份相关,但它们保存的对象和用途有所不同:
- docker save用于保存的是镜像(image),而docker export用于保存的是容器(container)。
- docker load用于载入镜像包,docker import用于载入容器包,两者最终都会恢复为镜像。
- docker load不能对载入的镜像重命名,而docker import可以为镜像指定新名称。