因为本地物理机配置完了,所以要把服务器上的容器移到本机中,此时可以使用docker的导入导出功能,这也是docker自身提供的一个重要特征。
1、导出容器
导出容器可以导出一个已经创建的容器到一个文件,不管容器处于什么状态,可以使用docker export 命令。
命令格式为:docker export [-o|--output[=""]] CONTATINER
其中可以通过-o来指定导出的tar文件名,也可以直接通过重定向来实现。
看下我的容器列表:
这里我将ubuntu 的容器导出到文件ubuntu_run.tar中:
注:这里可以填容器的name ,也可以填容器id的前三位
另一种格式为:docker export 容器id/name >文件名.tar
可以使用scp 指令将文件进行传送:scp ubuntu_run.tar root@124.207.96.94:/root/
2、导入容器
导入的文件可以使用docker import 命令导入变成镜像,该命令的格式为:
docker import [-c|--change[=[]]] [-m|--message[=MESSAGE]] file|URL|-[REPOSITORY[:YAG]]
其中-c 选项可以在导入的同时执行对容器进行修改的Dockerfile指令(网络等修改)
下面将导出的文件导入到系统中:
导入成功
另外 docker load 命令也可以导入一个镜像存储文件,但是跟docker import 命令是有区别的:
- docker import:丢弃了所有的历史记录和元数据信息,仅保存容器当时的快照状态。在导入的时候可以重新制定标签等元数据信息。
- docker load:将保存完整记录,体积较大。