4.3. (可选)集成 Quay
使用这个流程将现有 Quay 组织或自托管 Quay 实例与 RHTAP 集成,作为容器镜像 registry。
如果您没有集成现有的 Quay 实例,RHTAP 安装程序将部署一个新的 Quay 实例。要使用它,您必须在安装 RHTAP 后集成此实例。
您必须从 Quay 实例获取两个值,并在运行 CLI 命令时使用它们:Docker 配置字符串和访问令牌。
红帽建议为此集成使用机器人帐户,而不是用户帐户。机器人帐户允许自动化系统和多个用户在安装 RHTAP 后向 Quay 命名空间进行身份验证。
要了解如何创建和配置机器人帐户,请参阅: 在 Red Hat Quay 中创建和使用机器人帐户。
流程
- 在 Web 浏览器中,登录您的 Quay 帐户。
- 在页面右上角,单击您的用户名,然后选择 Account Settings。
- 在 Account Settings 页面上,在 Docker CLI Password 下,单击 Generate Encrypted Password。提示时,输入您的密码进行验证。
-
在同一弹出窗口中,点 Docker Configuration > View [username]-auth.json。复制遵循
"auth":
的字符串值(没有引号)。 -
将
auth
值和 Quay 用户名保存到文件中,如values.txt
,以便在构建 Docker 配置时使用它们。 - 在单独的浏览器选项卡中,前往 Repositories 页面。
- 在 Users and Organizations 下,单击您要用于 RHTAP 的组织的名称。
- 在左侧导航中,单击 Applications。
- 点 Create New Application 并输入名称。
- 点您创建的应用程序的名称。
- 在左侧导航中,单击 Generate Token。
- 在权限列表中,选择 View all visible repositories。
- 单击 Generate Access Token。
- 单击 授权应用程序。Quay 显示访问令牌。复制此令牌。
您可以使用 OAuth 应用程序而不是用户或机器人帐户。如需更多信息,请参阅创建 OAuth 2 访问令牌。
另外,只需要 View all visible repositories 权限。
在
rhtap-cli
容器中,运行以下命令来将 Quay 与 RHTAP 集成,传递所有所需的值:bash-5.1$ rhtap-cli integration quay \ --dockerconfigjson='{"auths":{"quay.io":{"auth":"<auth_token>","email":""}}}' \ --token="<quay_access_token>" \ --url="https://quay.io"
bash-5.1$ rhtap-cli integration quay \ --dockerconfigjson='{"auths":{"quay.io":{"auth":"<auth_token>","email":""}}}' \ --token="<quay_access_token>" \ --url="https://quay.io"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下值:
-
<auth_token
> : 来自 "auth" 下的
文件中的值:auth
.json -
<quay_access_token
> : 通过 OAuth 应用程序生成的访问令牌 -
https://quay.io
: Quay 实例 URL (如果自托管则使用您的自定义 URL)
-
确保将 entire-- dockerconfigjson
值包含在单引号中,以保留 JSON 格式。