搜索

第 3 章 在部署前配置 Quay

download PDF

Operator 可以在 OpenShift 上部署时管理所有 Red Hat Quay 组件,这是默认配置。另外,您还可以在外部管理一个或多个组件,在其中需要对集合进行更多控制,然后让 Operator 管理剩余的组件。

配置非受管组件的标准模式为:

  1. 使用适当的设置创建 config.yaml 配置文件
  2. 使用配置文件创建 Secret

    $ oc create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
  3. 创建 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

  4. 使用 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

  1. 使用配置文件创建 Secret

    $ oc create secret generic --from-file config.yaml=./config.yaml init-config-bundle-secret
  2. 创建 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

  3. 部署 registry:

    $ oc create -f quayregistry.yaml
  4. 使用 API 创建第一个用户 quayadmin
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.