Red Hat Training

A Red Hat training course is available for RHEL 8

第 3 章 使用容器注册中心

容器镜像注册中心是用于存储容器镜像和基于容器的应用程序工件的存储库或存储库集合。/etc/containers/registries.conf 文件是一个系统范围的配置文件,其中包含可供各种容器工具(如 Podman、Buildah 和 Skopeo)使用的容器镜像注册中心。

如果提供给容器工具的容器镜像不是完全限定的,则容器工具会引用 registry.conf 文件。在 registry.conf 文件中,您可以为短名称指定别名,在未完全限定时,授予管理员完全控制从哪里拉取镜像。例如,podman pull example.com/example_image 命令将容器镜像从 example.com 注册中心拉取一个容器镜像到本地系统,如 registry.conf 文件中指定的那样。

3.1. 容器 registry

容器注册表是用来存储容器镜像和基于容器的应用工件的存储库或存储库的集合。红帽提供的注册中心是:

  • registry.redhat.io (需要身份验证)
  • registry.access.redhat.com(不需要身份验证)
  • registry.connect.redhat.com (持有 Red Hat Partner Connect 程序镜像)

要从远程注册中心(如红帽自己的容器注册中心)获取容器镜像,并将其添加到本地系统,请使用 podman pull 命令:

# podman pull <registry>[:<port>]/[<namespace>/]<name>:<tag>

其中 <registry>[:<port>]/[<namespace>/]<name>:<tag> 是容器镜像的名称。

例如,registry.redhat.io/ubi8/ubi 容器镜像通过以下方式识别:

  • 注册表服务器(registry.redhat.io)
  • 命名空间(ubi8)
  • 镜像名称(ubi)

如果同一镜像有多个版本,则请添加一个标签来明确指定镜像名称。默认情况下,Podman 使用 :latest 标签,如 ubi8/ubi:latest

有些注册表也使用 <namespace> 来区分不同用户或机构所拥有的具有相同 <name> 的镜像。例如:

命名空间示例(<namespace>/<name>

机构

redhat/kubernetesgoogle/kubernetes

login(用户名)

alice/applicationbob/application

role

devel/databasetest/databaseprod/database

有关转换到 registry.redhat.io 的详情,请参阅 红帽容器注册中心验证。在从 registry.redhat.io 拉取容器前,您需要使用 RHEL 订阅凭证进行身份验证。