揭秘开放容器标准(OCI)规范

本文讲的是揭秘开放容器标准(OCI)规范【译者的话】本文介绍了OCI运行时和镜像规范,以及在过去的一段时间里大家对该规范的一些误解。OCI规范制订工作尚未落幕,未来也将对容器产生更加深远的影响。

【3 天烧脑式基于Docker的CI/CD实战训练营 | 北京站】本次培训围绕基于Docker的CI/CD实战展开,具体内容包括:持续集成与持续交付(CI/CD)概览;持续集成系统介绍;客户端与服务端的 CI/CD 实践;开发流程中引入 CI、CD;Gitlab 和 CI、CD 工具;Gitlab CI、Drone 的使用以及实践经验分享。

开放容器标准组织本周宣布完成第一版容器运行时和镜像规范。为了支持容器解决方案,Linux基金会主导开发了OCI规范和标准。在过去两年里,这些规范建设工作凝聚了很多辛勤的努力。考虑到这一点,让我们来看看过去两年中出现的一些“误解”。

误解:OCI是Docker的替代品

标准很重要,但它们远非完整的产品平台。举个例子,万维网,其过去25年的发展建立在诸如TCP/IP、HTTP和HTML等核心可靠的标准之上。以TCP/IP为例,当企业将其作为一种通用协议使用时,它推动了路由器,特别是思科的发展。然而,思科通过关注其路由平台上的差异化功能,成为其市场的领导者。我们认为OCI规范和Docker将和谐共存。

Docker是一个完整的产品平台,满足容器解决方案的开发、分发、安全和编排各项需求。Docker使用OCI规范,但它只涵盖了该规范大约5%的内容,并且Docker平台只有很少一部分涉及容器的运行时行为和容器镜像的布局。

误解:产品和项目已经通过了OCI的规范认证

运行时和镜像规范本周刚刚发布了1.0版本。然而,OCI认证计划仍在发展中,所以企业在今年晚些时候正式推出认证之前,不能要求合规性,一致性或兼容性。

OCI认证工作组目前正在定义标准,使产品和开源项目能够符合规范。标准和规范对于实施解决方案的工程师很重要,但正式认证是向客户保证其正在使用的技术真正符合标准的唯一方式。

误解:Docker不支持OCI规范

Docker长久以来一直为OCI做出贡献。我们开发并捐赠了大部分的OCI代码,并作为项目维护者在定义运行时和镜像规范时做了一些建设性工作。当Docker运行时和镜像格式在2013年作为开放源代码发布后,迅速成为事实上的标准,我们认为将代码捐赠给中立的管理机构,以避免发展力量分散和鼓励创新将是有益的。目标是提供一个可靠和标准化的规范,因此Docker作为运行时规范工作的基础,提供了一个简单的容器运行时的runc,后来将Docker V2镜像规范作为OCI镜像规范工作的基础。

Docker开发人员如Michael Crosby和Stephen Day一开始便是这项工作的关键贡献者,确保Docker托管和运行数十亿个容器镜像的体验可以过渡到OCI规范下。认证工作组完成工作后,Docker将通过OCI认证过程将其产品展示出来,以证明OCI的一致性。

误解:OCI规范只涉及Linux容器

有一种误解,OCI仅适用于Linux容器技术,因为它是在Linux基金会的主导下开发的。现实情况是,虽然Docker技术开始于Linux的世界,Docker已经与微软合作,把我们的容器技术,平台和工具引入了Windows服务器的世界。此外,Docker已经捐给了OCI的底层技术是广泛适用于多层架构环境,包括Linux、Windows、Solaris和涵盖X86、ARM和IBM zSeries。

误解:Docker只是OCI的众多贡献者之一

OCI作为一个组织,有很多代表容器业界的广度的支持成员。也就是说,它是一个小而专业的个人技术专家组,为制订初始规范的工作贡献了时间和技术。Docker是OCI的创始成员,贡献了初始代码库,构成了运行时规范的基础,后来自身也引用了这种实现。同样,Docker也将Docker V2 Image规范作为OCI镜像规范的基础。

误解:CRI-O是OCI项目

CRI-O是云原生计算基金会(CNCF)的Kubernetes孵化器的一个开源项目–不是OCI项目。它基于Docker架构的早期版本,而containerd是一个直接的CNCF项目,它是一个更大的容器运行时,该运行时包含runc的参考实现。containerd负责镜像传输和存储,容器执行和监督,以及支持存储和网络插件的底层功能。Docker在五个最大的云提供商(阿里云,AWS,Google Cloud Platform,IBM Softlayer和Microsoft Azure)的支持下,将containerd捐赠给了CNCF,其协议是作为多个容器平台和容器编排系统的核心容器运行时。

误解:OCI规范现已完成

虽然运行时和镜像格式规范的发布是一个重要的里程碑,但仍有工作要做。OCI的初始范围是定义一个狭窄的规范,仅针对哪些开发人员可以依赖于容器的运行时行为,如何防止在行业中的碎片化,并且仍然允许在不断变化的容器领域中进行创新。随后将其扩展为包含容器镜像规范。

随着工作组完成运行时行为和镜像格式的第一个稳定规范,正在考虑新的工作。未来工作的思路包括分发和签名。然而,OCI的下一个最重要的工作是提供一个由测试套件支持的认证过程,因为第一个规范是稳定的。

了解更多关于OCI和Docker的开放源码:

作者介绍

Stephen是Docker开源项目总监。他曾在Hewlett-Packard Enterprise担任董事和杰出技术专家。他博客关于开源软件和业务在Once More Unto The Breach和opensource.com。

原文链接:DEMYSTIFYING THE OPEN CONTAINER INITIATIVE (OCI) SPECIFICATIONS (翻译:付辉)

原文发布时间为:2017-07-22

本文作者:付辉

原文标题:揭秘开放容器标准(OCI)规范

时间: 2024-12-31 11:19:42

揭秘开放容器标准(OCI)规范的相关文章

回顾容器标准之争:Docker赢了,而CoreOS未必就输了

本文讲的是回顾容器标准之争:Docker赢了,而CoreOS未必就输了,[编者的话]本文讲述了Docker和CoreOS容器标准之争的历史,现在这两家公司决定一起合作OCP(开放容器项目),无疑,这对于广大Docker爱好者来说都是一个好消息. CoreOS曾经是Docker生态圈中最重要的一部分,大概一年前,它宣称有了自己的容器标准,自此,容器生态圈就出现了分裂.那个时候,CoreOS的CEO Alex Polvi说,『Docker商业实体』的模式正在试图构建一种可行的商业模式,这对生态圈来说

理清容器标准和基金会:OCI,CNCF,appc 和 rkt

在CoreOS,我们坚信开放的标准对于容器生态环境的成功至关重要.我们对于围绕着容器和云原生计算的标准和基金会所投入的大量工作感到非常兴奋,这也包括今天关于Open Container Intialtive(OCI)的技术管理结构的正式制定公告. 过去的一年事情进展很快,从App Container(appc)规范和rkt,到Open Container Initialitive(OCI),再到Cloud Native Computing Foundation(CNCF).今天,我们想花一点时间

Oracle、Twitter等公司加入开放容器项目,OCP项目更名为OCI

本文讲的是Oracle.Twitter等公司加入开放容器项目,OCP项目更名为OCI,[编者的话]开放容器项目目前已经更名为开放容器计划(OCI),因为OCP总是容易和Open Compute Project混淆.同时, AT&T.ClusterHQ.Datera.Kismatic.Kyup.Midokura.Nutanix.Oracle.Polyverse.Resin.io.Sysdig.SUSE.Twitter和Verizon等14个公司新加入了OCI,OCI声势浩大. 一个月前的Docke

开放容器项目及其意义

本文讲的是开放容器项目及其意义,[编者的话]DockerCon 2015大会于6月22在美国旧金山揭幕,大会上Linux基金会与行业巨头联手打造开放容器技术项目Open Container Project,旨在实现容器标准化.作者从行业角度分析了这个项目背后的意义. 昨天看到了在旧金山公布的开放容器项目(Open Container Project).这个由Linux基金会打造的项目,旨在实现容器镜像格式与运行时的标准化.怎么看都是个"好东西". 有许多平时持怀疑态度的公司也出现在签署

oct —— 华为的开放容器测试框架

oct 是用于开放容器的测试用例和框架,用 Go 语言开发. ocp-testing 项目的目标是,通过提供全局测试框架给所有的容器项目,来提高开放容器项目.测试包括,ocp 规范,容器功能和容器性能. 框架架构: Open Container Pool :开放容器池(Open Container Pool)提供 restful API 给用户,以便他们查询/创建/获取容器镜像.开放容器池作用类似于中介,传递请求给不同的容器 hubs. Open Test Server :开放测试服务器(Ope

开放容器计划能否改善容器安全性?

最近Docker和CoreOS联手打造一个新的Linux基金项目叫做开放容器计划(Open Container Project).何谓开放容器计划?他如何改善软件容器的安全性? Dan Sullivan:开放容器计划,也被称为开放容器倡议,意在创建一个标准的容器显像模式和运行引擎.该项目由Linux基金会组织并赞助.尽管Docker已经有一个成形的标准了,Linux软件商CoreOS的相应的叫做rkt的标准与Docker不同,将容器行业分裂开来. 很难想象在软件堆栈这个关键层面上有如此区分的软件

容器标准之战继续 CoreOS容器引擎发布

只用了不到十年的时间,容器技术就从默默无名走到了今天的众人追捧.这当然要取决于容器技术的先天优势,如简化程序.节省开支等,但是,旷日持久的容器标准之战也为容器的成熟与产品化提供了助力. Docker是最为大众所熟知的容器技术产品,它是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上.Docker提出的口号也是"Build once,Run anywhere".但是,从2014年年末,Docker就遇到了一个竞争对手:

DMTF云计算开放管理标准内容

本文讲的是DMTF云计算开放管理标准内容,[IT168 资讯]分布式管理任务组(DMTF)最近宣布组建一个研究组,专门解决云计算开放管理标准的需求,准备制定一套操作性标准,内容包括: 云计算分类学:一套词汇和定义 云计算户操作性白皮书 信息性技术规范,包括:提出用于云计算的OVF修改建议;管理云计算暴露的资源的建议规范(如应用程序编程接口和协议);修改分布式管理任务组其它标准的建议; 信任云计算资源管理的要求 与合适的联盟合作伙伴一起研究记录 Bumpus称,如果一切顺利,这个研究组将提出一套技

《HTML5移动应用开发入门经典》—— 1.4 使用开放Web标准

1.4 使用开放Web标准 HTML5移动应用开发入门经典HTML5的主要目的是用来开发更优秀.更高效的Web应用,它也是在开放Web标准下开发的API和规范组中的一部分.开放Web标准又称为开放Web平台,是给予Web生命力的自由授权(royalty-free)技术的集合. 许多人认为HTML5还应该包括更多内容.事实上,一些特性,如历史API(第22章).本地存储(第21章),以及地理定位(第23章)都拥有独立规范,它们与HTML5一起成为开发者手中创建Web页面.Web应用.移动应用等的利