资讯专栏INFORMATION COLUMN

在节点之间导出和导入 DOCKER 镜像

lylwyy2016 / 1051人阅读

摘要:提交你的变更,并且把容器保存成镜像,命名为。在你的新的实例中运行命令,并且指定镜像文件的位置。最后,运行命令检查镜像现在是否可用。

  

注:本文由 JAMES.COYLE 在 2014-6-16 编写,原文地址为 EXPORT AND IMPORT A DOCKER IMAGE BETWEEN NODES

Docker 背后的驱动力之一就是通过所有的 Docker 使服务器 能创建一个一致的环境,并且能创建一个能运行在任何 Docker 服务器上的合适的模板或是镜像。

因此,Docker 能非常完美的支持,能非常容易的导出一个正在运行的容器,并且重新导入另外一台 Docker 服务器。

让我们假设一下,例如这个示例,你有一个你将移动到另外一台服务器去的正在运行的容器。这个进程的功能就是把这个容器保存为一个镜像,保存成 一个 tar 文件,把它移动到新的服务器,并且把这个镜像加载进新的 docker 服务器。

找到你想移动的 Docker 容器的 ID。

 docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
f4b0d7285fec        ubuntu:14.04        /bin/bash           38 minutes ago      Exit 0                                  hungry_thompson
8ae64c0faa34        ubuntu:14.04        /bin/bash           41 minutes ago      Exit 0                                  jovial_hawking
3a09b2588478        ubuntu:14.04        /bin/bash           45 minutes ago      Exit 0                                  kickass_lovelace

我将使用 3a09b2588478 这个 ID 作为示例演示。

提交你的变更,并且把容器保存成镜像,命名为 mynewimage

$ docker commit 3a09b2588478 mynewimage
4d2eab1c0b9a13c83abd72b38e5d4b4315de3c9967165f78a7b817ca99bf191e

mynewimage 镜像保存成 tar 文件,我将使用 /tmp 目录保存这个镜像,但是你可以使用 NFS 来共享,使得非常容易的移动完成 tar 文件。

$ docker save mynewimage > /tmp/mynewimage.tar

mynewimage.tar 拷贝到新的 Docker 实例中,使用任何工作在你环境中的方法,比如 FTP、SCP 等等。

在你的新的 Docker 实例中运行 docker load命令,并且指定 tar 镜像文件的位置。

$ docker load < /tmp/mynewimage.tar

最后,运行 docker images 命令检查镜像现在是否可用。

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
mynewimage          latest              4d2eab1c0b9a        5 minutes ago       278.1 MB
ubuntu              14.04               ad892dd21d60        11 days ago         275.5 MB
                            6b0a59aa7c48        11 days ago         169.4 MB
                            6cfa4d1f33fb        7 weeks ago         0 B

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/28100.html

相关文章

  • docker 镜像与容器的导入导出操作实践

    摘要:二思路我一开始想的是把镜像文件直接拷贝到测试服务器对应的目录,不过在查找相关资料发现本身就提供了导入和导出的功能,因此到这个过程到简单了,导出和导入的功能中也分了镜像与容器的概念。 一、背景 公司有一台测试服务器,网速比较慢,特别是下载一些国外站点镜像的时候,而我本机则比较快,还有梯子,所以在思考一个问题;是否能在我本地把镜像下载下来,然后复制到测试服务器中。 二、思路 我一开始想的是...

    huayeluoliuhen 评论0 收藏0
  • Docker 笔记(1):介绍、镜像、容器及其基本操作

    摘要:由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。镜像实际是由多层文件系统联合组成。容器可以被创建启动停止删除暂停等。容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。 Docker简介 Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS ...

    khs1994 评论0 收藏0
  • 五分钟快速了解Docker

    摘要:核心概念镜像镜像类似于虚拟机镜像。每个镜像包括了一个基本的操作系统环境容器容器类似于一个轻量级的沙箱,利用容器来运行和隔离应用。 这些是我的笔记,都是记录的核心概念和使用方法 showImg(https://segmentfault.com/img/bVbcOnO?w=1354&h=894); 概述 使用docker搭建开发环境将近1年了,自我感觉docker的强大并非如此,不过没有机...

    Tecode 评论0 收藏0
  • 一篇文章带你掌握docker基础知识

    摘要:和区别让用户可以进入查看输出等等操作,但是并不会另外启动一个进程如果你用来退出,同时这个信号会默认情况会启动另外一个进程来进入,这里的操作是在这个进程下的。 走在通往docker的大道上——docker基础知识汇总 最后编辑时间:2017年03月09日 1.Docker是什么 Docker是一种新的容器化技术,为应用开发和部署提供一站式容器解决方案,能帮助开发者高效快速的构建应用,实...

    TANKING 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<