第 1 章 高级 Red Hat Quay 配置
您可以使用以下接口之一在初始部署后配置 Red Hat Quay:
-
Red Hat Quay Config Tool。使用这个工具,在以
config
模式运行Quay
容器时,提供了一个基于 Web 的界面来配置 Red Hat Quay 集群。建议使用此方法配置 Red Hat Quay 服务。 -
编辑
config.yaml
。config.yaml
文件包含 Red Hat Quay 集群的大部分配置信息。可以直接编辑config.yaml
文件,但建议只建议通过配置工具来提供的高级调优和性能功能。 - Red Hat Quay API。可以通过 API 配置一些 Red Hat Quay 功能。
本节中的此内容论述了如何使用上述每个接口,以及如何使用高级功能配置部署。
1.1. 使用 Red Hat Quay Config Tool 修改 Red Hat Quay
Red Hat Quay Config Tool 可以在 config
模式下运行 Quay
容器以及常规的 Red Hat Quay 服务来提供。
使用以下部分从 Red Hat Quay Operator 运行 Config Tool,或者从 CLI 在主机系统上运行 Config Tool。
1.1.1. 从 Red Hat Quay Operator 运行 Config Tool
在 OpenShift Container Platform 上运行 Red Hat Quay Operator 时,可使用 Config Tool。使用以下步骤访问 Red Hat Quay Config Tool。
先决条件
- 您已在 OpenShift Container Platform 上部署了 Red Hat Quay Operator。
流程.
-
在 OpenShift 控制台中,选择 Red Hat Quay 项目,如
quay-enterprise
。 在导航窗格中,选择 Networking
Routes。您应该会看到指向 Red Hat Quay 应用程序和配置工具的路由,如以下镜像所示: -
选择到 Config Tool 的路由,如
example-quayecosystem-quay-config
。Config Tool UI 应该在您的浏览器中打开。 选择 Modify configuration for this cluster to up the Config Tool setup,例如:
- 进行所需的更改,然后选择 Save Configuration Changes。
- 单击 Continue Editing,或者选择 Next 以继续所有更正。
-
出现提示时,选择 Download Configuration。这将下载新
config.yaml
的 tarball,以及 Red Hat Quay 设置中使用的任何证书和密钥。config.yaml
可用于对您的配置进行高级更改,或用作未来参考。 - 选择 Go to deployment rollout → Populate configuration to deployments。等待 Red Hat Quay Pod 重启以使更改生效。
1.1.2. 从命令行运行 Config Tool
如果您从主机系统运行 Red Hat Quay,您可以使用以下步骤在初始部署后更改您的配置。
先决条件
-
已安装
podman
或docker
。
-
已安装
- 以配置模式启动 Red Hat Quay。
在第一个
Quay
节点上,输入以下命令:$ podman run --rm -it --name quay_config -p 8080:8080 \ -v path/to/config-bundle:/conf/stack \ {productrepo}/{quayimage}:{productminv} config <my_secret_password>
注意要修改现有配置捆绑包,您可以将配置目录挂载到
Quay
容器中。-
当 Red Hat Quay 配置工具启动时,打开浏览器并导航到您的配置文件中使用的 URL 和端口,如
quay-server.example.com:8080
。 - 输入您的用户名和密码。
- 根据需要修改 Red Hat Quay 集群。
1.1.3. 使用 TLS 证书部署配置工具
您可以通过将环境变量传递给 runtime 变量来部署配置工具。这样可确保保护对数据库和存储后端的凭据等敏感数据。
公钥和私钥必须包含您在其上部署配置工具的路由的有效主题备用名称(SAN)。
可以使用 CONFIG_TOOL_PRIVATE_KEY
和 CONFIG_TOOL_PUBLIC_KEY
来指定路径。
如果您从容器运行部署,CONFIG_TOOL_PRIVATE_KEY
和 CONFIG_TOOL_PUBLIC_KEY
将证书的位置值在容器中的值。例如:
$ podman run --rm -it --name quay_config -p 7070:8080 \ -v ${PRIVATE_KEY_PATH}:/tls/localhost.key \ -v ${PUBLIC_KEY_PATH}:/tls/localhost.crt \ -e CONFIG_TOOL_PRIVATE_KEY=/tls/localhost.key \ -e CONFIG_TOOL_PUBLIC_KEY=/tls/localhost.crt \ -e DEBUGLOG=true \ -ti config-app:dev