Docker 及 CoreOS 联手行业联盟创建开放容器项目(OCP)

  • Daniel Bryant
  • 谢丽

2015 年 6 月 24 日

话题:DevOps语言 & 开发架构

DockerCon 2015 大会上,Solomon Hykes 宣布,一个包含供应商、用户和行业领导者的广泛联盟将联手创建“开放容器项目(Open Container Project,缩写为 OCP)”,旨在定义一个通用的容器格式和运行时规范。OCP 是一个极简的、非盈利的开放治理项目,在Linux 基金会的资助下运行。

HykesDocker 公司的创始人兼首席技术官。他表示,Docker 将向开放容器项目(OCP)捐献当前的基本容器格式和运行时(现在名为runC),帮助建立新技术的基石。Hykes 还宣布,由CoreOS推动的应用容器(appc)规范背后的团队也将作为 OCP 的联合创始人加入进来。Hykes 赞扬了 CoreOS 团队所做的工作:

我特别感激来自 CoreOS 的 Alex Polvi 和 Brandon Phillips,这两位 appc 的创始人将加入 OCP。帮助行业整合,将最好的理念——不管它们源于哪里——变成可以为用户和行业提供最佳结果的东西,是我们共同的愿望。他们的加入对此意义重大。

按照CoreOS 官方博客的说法,社区推动的 appc 规范和当前事实上的 Docker 镜像规范有望合二为一,形成一个新的规范:

我们认为,应用容器的大部分核心概念将成为 OCP 的一个重要组成部分。在我们开始合作制定 OCP 规范时, 我们的应用容器开发经验将发挥重要的作用。

[……]

最终目标是形成一个统一的标准容器格式规范,而 OCP 的成功将意味着应用容器主要目标的达成。

OCP 的其他创始成员包括 20 多个组织,按照 Hykes 的说法,他们占据了容器市场一个相当大的份额。Hykes 在 DockerCon 大会的主题演讲中提到了如下创始成员:Apcera、AWS、思科、CoreOS、Docker, EMC、富士通有限公司、谷歌、高盛投资公司、惠普、华为、IBM、英特尔、Joyent、Pivotal、Linux 基金会、Mesosphere、微软、Rancher Labs、红帽和 VMware。

Docker 在宣布创建 OCP 的博文中指出,虽然 Docker 自 2013 年 3 月推出后已经发生了很大的变化,但一些关键的原则它一直坚守着:

  • 以 Unix 的可组合性和简单性原则为基础进行设计
  • 重视生态系统
  • 做对用户最有利的事

按照 Docker 博客的说法,OCP 的创建以及 runC 的捐献均是服务于这些目标。首先,人们希望创建简单、清晰、模块化、可扩展的代码,除了创建者之外,开发者也可以轻松维护及改变用途。

[……] 通过将“容器(box)”与构建、分发和运行这些容器的工具明确地分开,我们认为,我们从根本上保留了可组合性和简单性的价值。[……] 一个明确定义的、简单的运行时调用和操作一个具有良好文档的标准格式,说的就是这种观点。

其次,这项工作将使得正在形成的容器生态系统专注于提升价值的领域,而不是将时间浪费在低级的“标准之争”上。

这特别重要,因为这个时候,Docker 和容器的运行环境基本上超出了 64 位 Linux,扩展到了多种体系架构和操作系统上,其中包括 32 位 OS、Power、Z、Windows 和 SmartOS。

第三,Hykes 指出,“这对用户而言是正确的”,用户就可以委身于 Docker、CoreOS 或其他任何供应商,只要他们创建的产品符合 OCP 规范,用户就不必担心被当前选择的任何特定的基础设施、供应商或工具锁定。

相反,[用户的] 的选择依据可以是尽可能地选择最好的工具构建最好的应用程序。

据 Docker 官方博客介绍,libcontainer项目的所有内容,包括nsinit以及所有独立于 Docker 运行所需的修改都已经捐献给这个项目。runC代码库可以从 OCP GitHub 库获取。Libcontainer 将不再作为一个独立的项目运营。

OCP 方案的具体内容参见官方网站,其中包括参考代码和规范草案,以及拟建的治理结构的细节信息。要了解更多关于 DockerCon 的信息及观看大会会议实况视频可以移步DockerCon 2015 的官方网站

查看英文原文:Docker, CoreOS and Industry Coalition Create Open Container Project

DevOps语言 & 开发架构