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

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 本文讲的是揭秘开放容器标准(OCI)规范【译者的话】本文介绍了OCI运行时和镜像规范,以及在过去的一段时间里大家对该规范的一些误解。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规范和标准。在过去两年里,这些 规范建设工作 凝聚了很多辛勤的努力。考虑到这一点,让我们来看看过去两年中出现的一些“误解”。
logo_oci.png

误解: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

本文作者:付辉

本文来自云栖社区合作伙伴Dockerone.io,了解相关信息可以关注Dockerone.io。

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

相关文章
|
缓存 Linux 容器
提速 30 倍!OCI 容器启动优化的历程
提速 30 倍!OCI 容器启动优化的历程
123 0
|
Cloud Native 微服务 容器
开放下载丨云原生架构容器&微服务优秀案例集
开放下载丨云原生架构容器&微服务优秀案例集
开放下载丨云原生架构容器&微服务优秀案例集
|
存储 Kubernetes 安全
真正运行容器的工具:深入了解 runc 和 OCI 规范
真正运行容器的工具:深入了解 runc 和 OCI 规范
真正运行容器的工具:深入了解 runc 和 OCI 规范
|
Ubuntu Linux 应用服务中间件
OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "ip": executable file not found in $PATH: unknown (Docker容器没有ip addr命令:exec ip addr 报错)
OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "ip": executable file not found in $PATH: unknown (Docker容器没有ip addr命令:exec ip addr 报错)
3730 0
|
Kubernetes Cloud Native 安全
让创新触手可及,阿里云容器服务 ACK 发行版开放免费下载
近期,阿里云容器服务向 ACK Anywhere 全面升级,并针对异构 IaaS 环境推出 Kubernetes 发行版(以下简称 ACK Distro),使企业在自有基础设施上也能享受到与公共云同源的技术能力。
让创新触手可及,阿里云容器服务 ACK 发行版开放免费下载
|
前端开发 安全 Java
不知道这些Servlet规范、容器,还敢说自己是Java程序员?(下)
不知道这些Servlet规范、容器,还敢说自己是Java程序员?
173 0
不知道这些Servlet规范、容器,还敢说自己是Java程序员?(下)
|
前端开发 JavaScript Java
不知道这些Servlet规范、容器,还敢说自己是Java程序员?(上)
不知道这些Servlet规范、容器,还敢说自己是Java程序员?
151 0
不知道这些Servlet规范、容器,还敢说自己是Java程序员?(上)
|
机器学习/深度学习 Docker 容器
阿里云容器宣布开放支持Kubernetes托管服务
在刚刚结束的云栖大会上,阿里云宣布了飞天专有云敏捷版2.0,它带来了对Kubernetes框架的支持,10月31日,阿里云公共云容器服务宣布开放支持Kubernetes 1.8.1版本的托管服务,结合并发挥如云主机、负载均衡、分布式存储、异构计算等阿里云强大的IaaS能力,通过一键部署、控制台集成等,为用户提供了一个安全、稳定、易用的Kubernetes托管服务。
5849 0
|
网络协议 容器
给容器服务的APIServer开放IPv6的访问
随着去年底(2017年11月),《推进互联网协议第六版(IPv6)规模部署行动计划》的正式发布,国家明确规定了“十三五”期间推进IPv6普及的年度工作时间表,将推动企业完成主流互联网门户、电商、搜索、社交、视频、游戏等应用的IPv6改造,IPv6即将在中国国家政策主导下大力推广。
2279 0
|
Linux PouchContainer 容器
阿里云加入开放容器计划( OCI),详解开源项目PouchContainer
阿里云加入开源社区开放容器计划。详解我们的最新开源容器项目,PouchContainer。
4056 0
下一篇
无影云桌面