3.3. 存储库镜像


3.3.1. 存储库镜像

Red Hat Quay 存储库镜像可让您将来自外部容器 registry 或其他本地 registry 的镜像镜像到 Red Hat Quay 集群中。使用存储库镜像功能,您可以根据存储库名称和标签将镜像同步到 Red Hat Quay。

在启用了存储库镜像的 Red Hat Quay 集群中,您可以执行以下操作:

  • 从外部 registry 中选择要镜像的存储库
  • 添加凭证以访问外部 registry
  • 识别要同步的特定容器镜像仓库名称和标签
  • 设置存储库同步的间隔
  • 检查同步的当前状态

要使用镜像功能,您需要执行以下操作:

  • 在 Red Hat Quay 配置文件中启用存储库镜像
  • 运行存储库镜像 worker
  • 创建已镜像的软件仓库

所有存储库镜像配置均可使用配置工具 UI 或 Red Hat Quay API 执行。

3.3.2. 镜像配置 UI

  1. 以配置模式启动 Quay 容器,再选择 Enable Repository mirror 复选框。如果您要在镜像过程中需要 HTTPS 通信并验证证书,请选择 HTTPS 和证书验证复选框。

    Enable mirroring and require HTTPS and verified certificates

  2. 验证并下载 配置文件,然后使用更新的 配置文件在 registry 模式中重启 Quay。

3.3.3. 镜像 worker

使用以下步骤启动存储库镜像 worker。

流程

  • 如果您还没有使用 /root/ca.crt 证书配置 TLS 通信,请输入以下命令来使用 repomirror 选项启动 Quay pod:

    $ sudo podman run -d --name mirroring-worker \
      -v $QUAY/config:/conf/stack:Z \
      registry.redhat.io/quay/quay-rhel8:v3.8.15 repomirror
    Copy to Clipboard Toggle word wrap
  • 如果您使用 /root/ca.crt 证书配置了 TLS 通信,请输入以下命令启动存储库镜像 worker:

    $ sudo podman run -d --name mirroring-worker \
      -v $QUAY/config:/conf/stack:Z \
      -v /root/ca.crt:/etc/pki/ca-trust/source/anchors/ca.crt:Z \
      registry.redhat.io/quay/quay-rhel8:v3.8.15 repomirror
    Copy to Clipboard Toggle word wrap

3.3.4. 创建已镜像的存储库

从外部容器 registry 镜像存储库时,您必须创建一个新的私有存储库。通常,名称与目标存储库相同,如 quay-rhel8

Create new Red Hat Quay repo

3.3.4.1. 存储库镜像设置

使用以下步骤调整已镜像存储库的设置。

前提条件

  • 您已在 Red Hat Quay 配置文件中启用了存储库镜像。
  • 您已部署了镜像 worker。

流程

  1. 在 Settings 选项卡中,将 Repository State 设置为 Mirror

    Create a new Red Hat Quay repo mirror

  2. 在 Mirror 选项卡中,输入连接到外部 registry 的详情,以及标签、调度和访问信息:

    Repository mirroring

  3. 在以下字段中输入所需详情:

    • registry Location: 您要镜像的外部存储库,如 registry.redhat.io/quay/quay-rhel8
    • tags: 此字段是必需的。您可以输入以逗号分隔的单个标签或标签模式列表。(请参阅 标签模式 部分了解详细信息。)
    • 开始日期: 镜像开始的日期。默认使用当前的日期和时间。
    • 同步间隔: 默认每隔 24 小时同步一次。您可以按小时或天更改它。
    • 机器人用户: 创建新的机器人帐户或选择一个现有的机器人帐户来开展镜像。
    • Username: 用于访问包含您要镜像存储库的外部 registry 的用户名。
    • Password: 与 Username 关联的密码。请注意,密码不能包含需要转义字符(\)的字符。

3.3.4.2. 高级设置

Advanced Settings 部分中,您可以使用以下选项配置 SSL/TLS 和代理:

  • 验证 TLS: 如果您需要 HTTPS,并在与目标远程 registry 通信时验证证书,请选择这个选项。
  • 接受未签名的镜像 : 选择这个选项允许镜像未签名的镜像。
  • HTTP Proxy: 如果您需要 HTTPS,并在与目标远程 registry 通信时验证证书,请选择这个选项。
  • https PROXY: 如果需要代理服务器,请识别访问远程站点所需的 HTTPS 代理服务器。
  • 无代理: 不需要代理的位置列表。

3.3.4.3. 现在同步

使用以下步骤启动镜像操作。

流程

  • 要执行即时镜像操作,请按存储库镜像选项卡上的 Sync Now 按钮。日志位于 Usage Logs 选项卡上:

    Usage logs

    镜像完成后,镜像将显示在 Tags 选项卡中:

    Repository mirroring tags

    以下是完成的存储库镜像屏幕的示例:

    Repository mirroring details

3.3.5. 镜像标签模式

必须至少输入一个标签。下表引用了可能的镜像标签模式。

3.3.5.1. 模式语法

Expand

pattern

Description

*

匹配所有字符

?

匹配任何单个字符

[seq]

匹配 seq中的任何字符

[!seq]

匹配不属于 seq的任何字符

3.3.5.2. 标签模式示例

Expand

Pattern 示例

匹配示例

v3*

v32, v3.1, v3.2, v3.2-4beta, v3.3

v3.*

v3.1, v3.2, v3.2-4beta

v3.?

v3.1, v3.2, v3.3

v3.[12]

v3.1, v3.2

v3.[12]*

v3.1, v3.2, v3.2-4beta

v3.[!1]*

v3.2, v3.2-4beta, v3.3

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat