使用 YAML 安装
使用场景
在以下场景中使用 YAML 安装:
- 高级用户,具备 Kubernetes 经验,并且偏好手动方式。
- 需要外部管理存储的部署,例如 NAS、S3-compatible 对象存储或 Ceph。
- 需要对 TLS 和 ingress 进行细粒度控制的环境。
- 用于高级配置的完整 YAML 自定义。
前提条件
- 将 Registry 集群插件安装到目标集群。
- 已配置 kubectl,并且可以访问目标 Kubernetes 集群。
- 具有创建集群级资源的集群管理员权限。
- 获取已注册的域名,例如
registry.example.com。有关域名配置,请参见 创建域名。 - 提供有效的 NAS 存储,例如 NFS。
- 可选:提供有效的 S3-compatible 存储。
使用 YAML 安装 Registry
操作步骤
-
创建一个名为
registry-plugin.yaml的 ClusterPluginInstance 清单文件,并使用以下模板: -
根据你的环境自定义以下字段:
-
如何为 S3 凭据创建 secret:
将
<S3-CREDENTIALS-SECRET>替换为你的 S3 凭据 secret 名称。 -
可选:启用 registry push 限制,用于限制镜像大小和 tag 数量。
此能力由内置的 Registry proxy 提供。
要启用它:
- 将
spec.config.registryLimitConfig.enabled设置为true。 - 将
spec.config.registryLimitConfig.configMapName设置为你在 Registry 命名空间中手动创建的 ConfigMap 名称。
示例:
说明:
- 该 ConfigMap 不由 Registry 插件创建。
- 对于新部署,推荐的 ConfigMap 名称为
image-registry-limit-config。 - 运行时仍然出于向后兼容性接受旧的 ConfigMap 名称
registry-gateway-config。 - 有关详细的 ConfigMap 示例、规则行为和验证步骤,请参见 配置 Registry Push 限制。
启用此功能后,请在继续执行第 5 步之前应用 ConfigMap:
- 将
-
将 Registry 插件清单应用到你的集群。
此命令会创建或更新名为
image-registry的ClusterPluginInstance资源,从而安装或更新 Registry 集群插件。如果启用了
registryLimitConfig,请在此步骤之前应用 配置 Registry Push 限制 中所述的限制 ConfigMap。
配置参考
常用字段
验证
- 检查插件:
- 验证 registry Pod:
更新或卸载 Registry
更新
在 global 集群上执行以下命令,并根据上面提供的参数说明更新资源中的值,以完成更新:
卸载
在 global 集群上执行以下命令: