第 10 章 开放容器项目支持
容器 registry 最初设计为支持 Docker 镜像格式中的容器镜像。为了促进除 Docker 外的其他运行时,还创建了开放容器项目(OCI),以提供与容器运行时和镜像格式相关的标准化。大多数容器注册表都支持 OCI 标准化,因为它基于 Docker 镜像清单 V2、Schema 2 格式。
除了容器镜像外,还出现各种工件,它们不仅支持单独的应用程序,还存在 Kubernetes 平台作为一个整体的支持。这些范围包括用于安全性和监管的 Open Policy Agent (OPA)策略到 Helm chart 和 Operator,以帮助应用程序部署。
Red Hat Quay 是一个私有容器 registry,它不仅存储容器镜像,还支持整个工具生态系统,以帮助管理容器。Red Hat Quay 努力与 OCI 1.0 镜像和分发 规格 兼容,并支持像 Helm chart 等常用介质类型(只要它们推送了支持 OCI 的 Helm 版本),以及容器镜像的清单或层组件中的各种任意介质类型。当 registry 更加严格时,对此类 novel 介质类型的支持与以前的 Red Hat Quay 迭代不同。因为 Red Hat Quay 现在可以与更广泛的介质类型一起工作,包括之前不在其支持范围范围外的介质类型,所以现在它比标准容器镜像格式更广泛,而且是标准的容器镜像格式,也是新的或不合比例的类型。
除了其对 novel 介质类型的扩展支持外,Red Hat Quay 还可确保与 Docker 镜像的兼容性,包括 V2_2 和 V2_1 格式。与 Docker V2_2 和 V2_1 镜像的兼容性演示了 Red Hat Quay 的承诺为 Docker 用户提供无缝体验。此外,Red Hat Quay 继续扩展对 Docker V1 拉取的支持,并满足可能仍然依赖这个早期版本的 Docker 镜像的用户。
对 OCI 工件的支持会被默认启用。在以前的版本中,在 FEATURE_GENERAL_OCI_SUPPORT
配置字段下启用了 OCI 介质类型。
因为现在默认启用所有 OCI 介质类型,所以不再需要使用 FEATURE_GENERAL_OCI_SUPPORT
、ALLOWED_OCI_ARTIFACT_TYPES
和 IGNORE_UNKNOWN_MEDIATYPES
。
另外,FEATURE_HELM_OCI_SUPPORT
配置字段已弃用。这个配置字段不再被支持,并将在以后的 Red Hat Quay 版本中删除。
10.1. Helm 和 OCI 的先决条件 复制链接链接已复制到粘贴板!
Helm 简化应用程序是如何打包和部署的。Helm 使用名为 Charts 的打包格式,其中包含代表应用程序的 Kubernetes 资源。Red Hat Quay 支持 Helm chart,只要它们是 OCI 支持的版本。
使用以下步骤预先配置您的系统以使用 Helm 和其他 OCI 介质类型。
10.1.1. 安装 Helm 复制链接链接已复制到粘贴板!
使用以下步骤安装 Helm 客户端。
流程
- 从 Helm Release 页面下载最新版本的 Helm。
输入以下命令解包 Helm 二进制文件:
tar -zxvf helm-v3.8.2-linux-amd64.tar.gz
$ tar -zxvf helm-v3.8.2-linux-amd64.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 Helm 二进制文件移到所需位置:
mv linux-amd64/helm /usr/local/bin/helm
$ mv linux-amd64/helm /usr/local/bin/helm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
有关安装 Helm 的更多信息,请参阅安装 Helm 文档。
10.1.2. 升级到 Helm 3.8 复制链接链接已复制到粘贴板!
对 OCI registry chart 的支持需要 Helm 已至少升级到 3.8。如果您已经下载了 Helm 并需要升级到 Helm 3.8,请参阅 Helm Upgrade 文档。
10.1.3. 使您的系统能够信任 Red Hat Quay 使用的 SSL/TLS 证书 复制链接链接已复制到粘贴板!
Helm 客户端和 Red Hat Quay 之间的通信通过 HTTPS 促进。从 Helm 3.5 开始,只支持通过 HTTPS 与可信证书通信的 registry。另外,操作系统必须信任 registry 公开的证书。您必须确保您的操作系统已配置为信任 Red Hat Quay 使用的证书。使用以下步骤使您的系统信任自定义证书。
流程
输入以下命令将
rootCA.pem
文件复制到/etc/pki/ca-trust/source/anchors/
文件夹:sudo cp rootCA.pem /etc/pki/ca-trust/source/anchors/
$ sudo cp rootCA.pem /etc/pki/ca-trust/source/anchors/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令更新 CA 信任存储:
sudo update-ca-trust extract
$ sudo update-ca-trust extract
Copy to Clipboard Copied! Toggle word wrap Toggle overflow