第 3 章 在部署前配置 Red Hat Quay


当在 OpenShift Container Platform 上部署时,Red Hat Quay Operator 可以管理所有 Red Hat Quay 组件。这是默认配置,但当您希望对设置进行更多控制时,您可以在外部管理一个或多个组件。

使用以下模式配置非受管 Red Hat Quay 组件。

流程

  1. 使用适当的设置创建 config.yaml 配置文件。对最小配置使用以下引用:

    $ touch config.yaml
    Copy to Clipboard Toggle word wrap
    AUTHENTICATION_TYPE: Database
    BUILDLOGS_REDIS:
        host: <quay-server.example.com>
        password: <strongpassword>
        port: 6379
        ssl: false
    DATABASE_SECRET_KEY: <0ce4f796-c295-415b-bf9d-b315114704b8>
    DB_URI: <postgresql://quayuser:quaypass@quay-server.example.com:5432/quay>
    DEFAULT_TAG_EXPIRATION: 2w
    DISTRIBUTED_STORAGE_CONFIG:
        default:
            - LocalStorage
            - storage_path: /datastorage/registry
    DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: []
    DISTRIBUTED_STORAGE_PREFERENCE:
        - default
    PREFERRED_URL_SCHEME: http
    SECRET_KEY: <e8f9fe68-1f84-48a8-a05f-02d72e6eccba>
    SERVER_HOSTNAME: <quay-server.example.com>
    SETUP_COMPLETE: true
    TAG_EXPIRATION_OPTIONS:
        - 0s
        - 1d
        - 1w
        - 2w
        - 4w
        - 3y
    USER_EVENTS_REDIS:
        host: <quay-server.example.com>
        port: 6379
        ssl: false
    Copy to Clipboard Toggle word wrap
  2. 输入以下命令,使用配置文件创建 Secret

    $ oc create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
    Copy to Clipboard Toggle word wrap
  3. 创建一个 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
    # ...
    Copy to Clipboard Toggle word wrap

  4. 输入以下命令使用 quayregistry.yaml 文件部署 registry:

    $ oc create -n quay-enterprise -f quayregistry.yaml
    Copy to Clipboard Toggle word wrap

3.1. 自动化的预配置选项

Red Hat Quay 提供了配置选项,可让 registry 管理员自动执行早期设置任务和 API 可访问性。这些选项对新部署很有用,并控制如何发出 API 调用。以下选项支持自动化和管理控制。

Expand
表 3.1. 自动配置字段
字段类型描述

FEATURE_USER_INITIALIZE

布尔值

在新部署的 Red Hat Quay registry 中启用初始用户 bootstrap。当在部署前在 config.yaml 文件中将此字段设置为 True 时,它允许管理员通过调用 api/v1/user/initialize 端点来创建第一个用户。

注意

与需要现有机构中 OAuth 应用程序的 OAuth 2 访问令牌 生成的所有其他 registry API 调用不同,api/v1/user/initialize 端点不需要身份验证。

BROWSER_API_CALLS_XHR_ONLY

布尔值

控制 registry API 是否只接受来自浏览器的调用。要允许基于浏览器的常规访问 API,管理员必须将此字段设置为 False。如果设置为 True,API 调用被阻止,防止管理员和用户与 API 交互。

SUPER_USERS

字符串

定义管理用户列表或超级用户,其具有对 registry 的完整特权和不受限制的访问权限。在部署前,Red Hat Quay 管理员应该在 config.yaml 中配置 SUPER_USERS,以确保立即管理访问权限而无需重新部署。设置此字段需要重启 registry 才能生效。

FEATURE_USER_CREATION

布尔值

当此字段设置为 False 时,将新用户重新创建给超级用户。此设置在管理员必须手动置备用户访问权限的受控环境中很有用。

以下 YAML 展示了推荐的自动化配置:

推荐的自动化配置

# ...
FEATURE_USER_INITIALIZE: true
BROWSER_API_CALLS_XHR_ONLY: false
SUPER_USERS:
- quayadmin
FEATURE_USER_CREATION: false
# ...
Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat