Docker
Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker 允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件的速度。[1]Docker 容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器。 容器更多的用于表示 软件的一个标准化单元。由于容器的标准化,因此它可以无视基础设施(Infrastructure)的差异,部署到任何一个地方。另外,Docker 也为容器提供更强的业界的隔离兼容。[2]Docker 利用Linux核心中的资源分离机制,例如cgroups,以及 Linux 核心名字空间(namespaces),来创建独立的容器(containers)。这可以在单一 Linux 实体下运作,避免引导一个虚拟机造成的额外负担[3]。Linux 核心对名字空间的支持完全隔离了工作环境中应用程序的视野,包括行程树、网络、用户 ID 与挂载文件系统,而核心的 cgroup 提供资源隔离,包括CPU、存储器、block I/O 与网络。从 0.9 版本起,Dockers 在使用抽象虚拟是经由libvirt的LXC与 systemd - nspawn 提供界面的基础上,开始包括 libcontainer 库做为以自己的方式开始直接使用由 Linux 核心提供的虚拟化的设施,依据行业分析公司“451 研究”:“Dockers 是有能力打包应用程序及其虚拟容器,可以在任何 Linux 服务器上运行的依赖性工具,这有助于实现灵活性和便携性,应用程序在任何地方都可以运行,无论是公用云端服务器、私有云端服务器、单机等。”
基本描述
安装、登录
基本操作
创建运行实例
docker run
docker build
镜像管理
私有仓库(推荐)
输出文件
save、load
export、import
版权声明: 本文为 InfoQ 作者【金】的原创文章。
原文链接:【http://xie.infoq.cn/article/189304bde008a420440e22b67】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论