第 11 章 开放容器计划支持
容器注册表最初设计为支持 Docker 镜像格式中的容器镜像。为了促进 Docker 之外的其他运行时,还创建了开放容器项目(OCI),以提供与容器运行时和镜像格式相关的标准化。大多数容器注册表支持 OCI 标准化,因为它基于 Docker 镜像清单 V2、Schema 2 格式。
除了容器镜像外,还出现各种工件不仅支持单个应用程序,而且支持整个 Kubernetes 平台。这些范围包括用于安全性和监管的 Open Policy Agent (OPA)策略,它们有助于应用程序部署中的 Helm chart 和 Operator。
Quay.io 是一个私有容器注册表,不仅存储容器镜像,还支持整个工具生态系统,以帮助管理容器。Quay.io 会努力与 OCI 1.1 镜像 和分发规格 兼容,并支持常见的介质类型,如 Helm chart (只要它们使用支持 OCI 的 Helm 版本)以及容器镜像清单或层组件中的各种任意介质类型。当 registry 对接受的介质类型更严格时,对 OCI 介质类型的支持与之前的 Quay.io 迭代不同。由于 Quay.io 现在与更广泛的介质类型一起工作,包括之前超出其支持范围的用户,现在它现在比标准容器镜像格式不仅仅是标准容器镜像格式,还具有新兴或不协调性类型。
除了对 novel 介质类型的扩展支持外,Quay.io 还可确保与 Docker 镜像(包括 V2_2 和 V2_1 格式)的兼容性。这种与 Docker V2_2 和 V2_1 镜像的兼容性演示了 Quay.io 为 Docker 用户提供无缝体验的承诺。此外,Quay.io 继续扩展对 Docker V1 拉取的支持,满足可能仍然依赖这个较早版本的 Docker 镜像的用户。
默认启用对 OCI 工件的支持。以下示例演示了如何使用一些介质类型,这些类型可用作使用其他 OCI 介质类型的示例。
11.1. Helm 和 OCI 的先决条件
Helm 简化应用程序是如何打包和部署的。Helm 使用名为 Charts 的打包格式,其中包含代表应用程序的 Kubernetes 资源。Quay.io 支持 Helm chart,只要它们是 OCI 支持的版本。
使用以下步骤预先配置您的系统以使用 Helm 和其他 OCI 介质类型。
最新版本的 Helm 可以在 Helm releases 页面中下载。