OCI 基于 Docker Registry v2 协议标准化容器注册表 API

  • Hrishikesh Barua
  • 无明

2018 年 5 月 1 日

话题:DevOps

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Open Container Initiative 启动了容器发行规范项目,用以标准化容器镜像注册表的 API。它基于Docker Registry 协议 v2,使用对象为 Docker 工具集和公有云供应商。

Docker Registry 协议 v2 是 Docker 工具集用于在注册表和用户之间推送和拉取镜像的协议。由于协议的广泛使用性质,它被作为新标准的基础,所有的实现都可以遵循该协议。根据 Docker 工程师 Michael Crosby 的说法,截至目前为止,已经有超过 400 亿个镜像是通过该协议推送的。该协议的 v2 版本与之前版本有重大变化,包括移除镜像内部与 Docker 工具集本身的紧密耦合。

OCI 执行董事 Chris Aniszczyk 在新闻稿中表示:

随着容器和云原生技术的蓬勃发展,社区需要一个可靠的行业发行标准,以提高互操作性,并与中立机构一起制定规范。

除了标准 Docker Hub 注册表之外,各种云供应商已经通过托管注册表支持 v2 协议。例如,AWS Elastic Container Registry(ECR)通过额外的身份验证层来支持它,其中标准的“docker login”命令可以通过单独调用 AWS API 获取令牌后进行身份验证。Google Cloud Platform 的容器注册表在标准注册表协议上具有类似的认证机制。其他实现包括Quay.ioGitLab容器注册表、华为DockyardJFrog Artifactory。目前尚不清楚在新规范下,是否会为不同的认证机制提供统一的包装层,该包装层将隐藏底层云提供商特定的机制。其他一些注册管理机构实现了一些在 Docker 注册表中不存在的端点,将其作为增值选项。

OCI 是 Linux 基金会的一个项目,在过去已经对容器生态系统的其他方面进行了标准化,如镜像运行时规范。这两个标准去年都推出了 1.0 版。从目前的公告来看,这一版本又是一个里程碑。运行时规范将 Docker 的runc项目作为参考实现。镜像格式规范也是如此,该规范基于 Docker 的镜像格式 v2。标准化是根据 OCI 技术监督委员会的政策进行的,首先提出提案,随后进行讨论和投票。

查看英文原文OCI Standardizes Container Registry API Based on Docker’s V2 Protocol

DevOps