docker学习笔记(8):容器镜像导入导出与启动操作 |
您所在的位置:网站首页 › docker镜像停止运行了怎么看id › docker学习笔记(8):容器镜像导入导出与启动操作 |
容器导入与导出
首先看一下有哪些正在运行或者被stop的容器: docker ps docker ps -a然后选择需要导出的容器,命令格式为: docker export [options] container 比如说要导出上面的第一个容器: docker export 921e3de63cd4 > update.tar然后就会看见在当前目录下生成了update.tar文件,这里需要注意写入的必须是存在的容器名,不然会报错 Error response from daemon: No such container: xxxxxx,另外最好也别写入镜像名,具体原因下面会介绍。 做好tar文件后,就可以在未导入的机器上进行导入,导入的命令格式为: docker import [options] file|URL|- [REPOSITORY[:TAG]] 上述命令后面的REPOSITORY是为标签,为了防止导入后没有标签名而全是None: docker import update.tar submarineas/my-flask:v0.1另外还有一种直接用转向符导入容器的方式: # 第一种方式 docker import - update update1.tar test:latest根据 Docker镜像的导入导出 博文中我知道,export导出的文件再import回去时,无法保留镜像所有历史(即每一层layer信息,不熟悉的可以去看Dockerfile),不能进行回滚操作;而save是依据镜像来的,所以导入时可以完整保留下每一层layer信息。 在实际使用中我发现,在提交为镜像后,save保存的文件会比export导出的文件要大100M左右,原因可能是save保存了每一层layer的信息产生了重复文件,而让镜像的层级更明确,这里如果用容器的导入方式是没问题的,但如果关系反一下,容器的导出用镜像的导入,就可能会报错:open /var/lib/docker/tmp/docker-import/repositories: no such file or dir 那么镜像的导入方式为: docker load -i update1.tar 或 docker load |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |