3.3. 填充私有自动化中(automation hub)容器 registry


默认情况下,私有自动化中心不包括自动化执行环境。要填充容器 registry,您必须将执行环境推送到其中。

您必须遵循特定的工作流来填充私有自动化中心远程 registry:

  • 从红帽生态系统目录(registry.redhat.io)拉取自动化执行环境
  • 标记它们
  • 将其推送到私有自动化中心远程 registry
重要

最初,镜像清单和文件系统 Blob 都直接由 registry.redhat.ioregistry.access.redhat.com 提供。从 2023 年 5 月 1 日起,文件系统 Blob 由 quay.io 提供。

  • 确保 Table 6.4 中列出的 网络端口和协议。执行环境(EE) 可用于避免拉取容器镜像的问题。

对任何特别启用到 registry.redhat.ioregistry.access.redhat.com 的出站连接进行此更改。

在配置防火墙规则时使用主机名而不是 IP 地址。

完成此更改后,您可以继续从 registry.redhat.ioregistry.access.redhat.com 拉取执行环境。您不需要 quay.io 登录,或以任何方式直接与 quay.io registry 交互,以继续拉取红帽容器镜像。

3.3.1. 拉取在自动化中心中使用的执行环境

在将执行环境推送到私有自动化中心之前,您必须首先从现有 registry 中拉取它们并标记它们以供使用。以下示例详细介绍了如何从红帽生态系统目录(registry.redhat.io)拉取执行环境。

先决条件

  • 有从 registry.redhat.io 中拉取自动化执行环境的权限。

流程

  1. 使用您的 registry.redhat.io 凭证登录到 Podman:

    $ podman login registry.redhat.io
  2. 输入您的用户名和密码。
  3. 拉取执行环境:

    $ podman pull registry.redhat.io/<ee_name>:<tag>

验证

要验证您最近拉取的执行环境是否包含在列表中,请执行以下步骤:

  1. 列出本地存储中的镜像:

    $ podman images
  2. 检查执行环境名称,并验证该标签是否正确。

其他资源

3.3.2. 标记在自动化中心中使用的执行环境

从 registry 中拉取执行环境后,标记它们以便在私有自动化中心远程 registry 中使用。

前提条件

  • 您已从外部 registry 拉取执行环境。
  • 有自动化中心实例的 FQDN 或 IP 地址。

流程

  • 使用自动化中心容器存储库标记本地执行环境:

    $ podman tag registry.redhat.io/<ee_name>:<tag> <automation_hub_hostname>/<ee_name>

验证

  1. 列出本地存储中的镜像:

    $ podman images
  2. 验证您最近使用自动化中心信息标记的执行环境是否包含在列表中。

3.3.3. 将执行环境推送到私有自动化中心

您可以将标记的执行环境推送到私有自动化中心,以创建新容器并填充远程 registry。

前提条件

  • 有创建新容器的权限。
  • 有自动化中心实例的 FQDN 或 IP 地址。

流程

  1. 使用您的自动化中心位置和凭证登录到 Podman:

    $ podman login -u=<username> -p=<password> <automation_hub_url>
    警告

    当您登录时,让 Podman 提示您输入密码。使用您的用户名同时输入密码,可以将您的密码公开给 shell 历史记录。

  2. 将执行环境推送到自动化中心远程 registry:

    $ podman push <automation_hub_url>/<ee_name>

故障排除

push 操作会在上传期间重新编译镜像层,无法保证可重复生成,依赖于客户端实施。这可能会导致镜像层摘要的变化,并导致推送操作失败,Error: Copying this image requires changing layer representation, which is not possible (image is signed or the destination specifies a digest)

验证

  1. 登录到您的 Ansible Automation Platform。
  2. 导航到 Automation Content Execution Environments
  3. 在 container 存储库列表中找到容器。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.