4.11. Undercloud 容器 registry

Red Hat Enterprise Linux 8.2 不再包括 docker-distribution 软件包,该软件包安装了 Docker Registry v2。为了保持兼容性和相同的功能级别,director 安装使用称为 image-serve 的 vhost 创建 Apache Web 服务器以提供 registry。该 registry 也使用禁用了 SSL 的端口 8787/TCP。基于 Apache 的 registry 未容器化,这意味着您必需运行以下命令以重启 registry:

$ sudo systemctl restart httpd

您可以在以下位置找到容器 registry 日志:

  • /var/log/httpd/image_serve_access.log
  • /var/log/httpd/image_serve_error.log。

镜像内容来自 /var/lib/image-serve。此位置使用特定目录布局和 apache 配置来实施 registry REST API 的拉取功能。

基于 Apache 的 registry 不支持 podman pushbuildah push 命令,这意味着您无法使用传统方法推送容器镜像。要在部署过程中修改镜像,请使用容器准备工作流,如 ContainerImagePrepare 参数。要管理容器镜像,请使用容器管理命令:

sudo openstack tripleo container image list
列出 registry 上存储的所有镜像。
sudo openstack tripleo container image show
显示 registry 上特定镜像的元数据。
sudo openstack tripleo container image push
将镜像从远程 registry 推送到 undercloud registry。
sudo openstack tripleo container image delete
从 registry 中删除镜像。
注意

您必须使用 sudo 级别权限运行所有容器镜像管理命令。