第 3 章 在部署前配置 Quay
Operator 可以在 OpenShift 上部署时管理所有 Red Hat Quay 组件,这是默认配置。另外,您还可以在外部管理一个或多个组件,在其中需要对集合进行更多控制,然后让 Operator 管理剩余的组件。
配置非受管组件的标准模式为:
-
使用适当的设置创建
config.yaml
配置文件 使用配置文件创建 Secret
$ oc create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
创建 QuayRegistry YAML 文件
quayregistry.yaml
,标识非受管组件以及引用所创建的 Secret,例如:quayregistry.yaml
apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: example-registry namespace: quay-enterprise spec: configBundleSecret: config-bundle-secret components: - kind: objectstorage managed: false
使用 YAML 文件部署 registry:
oc create -f quayregistry.yaml
3.1. 预配置 Quay 以实现自动化
Quay 具有多个支持自动化的配置选项。这些选项可以在部署前设置,以尽可能地缩短与用户界面交互的需要。
3.1.1. 允许 API 创建第一个用户
将配置选项 FEATURE_USER_INITIALIZE
设置为 true
,以便您可以使用 API /api/v1/user/initialize
来创建第一个用户。此 API 端点不需要身份验证,这与需要由现有组织中 OAuth 应用生成的 OAuth 令牌的所有其他 registry API 调用不同。
部署 Quay 后,您可以使用 API 来创建用户,例如 quayadmin
,只要还没有创建其他用户。如需更多信息,请参阅 使用 API 创建第一个用户部分
3.1.2. 启用常规 API 访问
将配置选项 BROWSER_API_CALLS_XHR_ONLY
设置为 false
,以允许常规访问 Quay registry API。
3.1.3. 添加超级用户
虽然在部署后无法创建用户,但可以方便地确保第一个用户是一个具有完整权限的管理员。使用 SUPER_USER
配置对象,可以提前配置此设置。
3.1.4. 限制用户创建
配置了超级用户后,您可以限制创建新用户到超级用户组的能力。将 FEATURE_USER_CREATION
设置为 false
以限制用户创建。
3.1.5. 推荐的自动化配置
创建包含适当设置的 config.yaml
配置文件:
config.yaml
... FEATURE_USER_INITIALIZE: true BROWSER_API_CALLS_XHR_ONLY: false SUPER_USERS: - quayadmin FEATURE_USER_CREATION: false ...
3.1.6. 使用初始配置部署 Operator
使用配置文件创建 Secret
$ oc create secret generic --from-file config.yaml=./config.yaml init-config-bundle-secret
创建 QuayRegistry YAML 文件
quayregistry.yaml
,标识非受管组件以及引用所创建的 Secret,例如:quayregistry.yaml
apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: example-registry namespace: quay-enterprise spec: configBundleSecret: init-config-bundle-secret
部署 registry:
$ oc create -f quayregistry.yaml
-
使用 API 创建第一个用户
quayadmin