2.2. 获取或构建 bootc 镜像
获取现有 bootc 镜像或创建一个镜像,然后将该镜像发布到远程 registry 中以供使用。
2.2.1. 为 MicroShift 获取公布的 bootc 镜像 复制链接链接已复制到粘贴板!
您可以使用 MicroShift 容器镜像为 RHEL 安装镜像模式。
先决条件
- 您有一个 x86_64 或 AArch64 平台。
-
您可以访问
registry.redhat.ioregistry。
流程
- 导航到 红帽生态系统目录。
-
使用
microshift-bootc关键字搜索 MicroShift 容器镜像。 - 打开 MicroShift 容器镜像的容器镜像页面。
-
请参阅
Overview和Technical Information选项卡,以获取有关镜像的更多详细信息。 -
选择
Get this image选项卡来查看下载镜像的说明。 使用以下命令登录到 registry,获取 x86_64 和 AArch64 平台上的最新镜像:
sudo podman login registry.redhat.io
$ sudo podman login registry.redhat.ioCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来下载 bootc 镜像:
podman pull registry.redhat.io/openshift4/microshift-bootc-rhel9:v4.18
$ podman pull registry.redhat.io/openshift4/microshift-bootc-rhel9:v4.18Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2. 构建 bootc 镜像 复制链接链接已复制到粘贴板!
使用 Containerfile 构建包含 MicroShift 的 Red Hat Enterprise Linux (RHEL)。
RHEL 的镜像模式是技术预览。不支持在生产环境中使用 bootc 镜像。
先决条件
- 具有有效红帽订阅的 RHEL 9.4 主机,用于构建 MicroShift bootc 镜像和运行容器。
-
您可以使用具有
sudo权限的用户凭证登录到 RHEL 9.4 主机。 -
rhocp和fast-datapath存储库可在主机订阅中访问。存储库不一定需要在主机上启用。 - 您有一个远程 registry,如 Red Hat quay,用于存储和访问 bootc 镜像。
流程
创建一个包含以下指令的 Containerfile :
RHEL 镜像模式的 Containerfile 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要在构建容器镜像时,Podman 使用容器内的主机订阅信息和存储库。如果主机上没有
rhocp和fast-datapath存储库,则构建会失败。设置
PULL_SECRET环境变量:PULL_SECRET=~/.pull-secret.json
$ PULL_SECRET=~/.pull-secret.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow 配置
USER_PASSWD环境变量:USER_PASSWD=<redhat_user_password>
$ USER_PASSWD=<redhat_user_password>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <redhat_user_password& gt; 替换为您的密码。
配置
IMAGE_NAME环境变量:IMAGE_NAME=microshift-4.18-bootc
$ IMAGE_NAME=microshift-4.18-bootcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下 image build 命令创建本地 bootc 镜像:
sudo podman build --authfile "${PULL_SECRET}" -t "${IMAGE_NAME}" \ --build-arg USER_PASSWD="${USER_PASSWD}" \ -f Containerfile$ sudo podman build --authfile "${PULL_SECRET}" -t "${IMAGE_NAME}" \ --build-arg USER_PASSWD="${USER_PASSWD}" \ -f ContainerfileCopy to Clipboard Copied! Toggle word wrap Toggle overflow 重要在镜像构建过程中如何使用 secret:
-
需要 podman--
authfile参数从registry.redhat.ioregistry 中拉取基础rhel-bootc:9.4镜像。 -
build
USER_PASSWD参数用于为redhat用户设置密码。
-
需要 podman--
验证
运行以下命令验证本地 MicroShift bootc 镜像是否已创建:
sudo podman images "${IMAGE_NAME}"$ sudo podman images "${IMAGE_NAME}"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
REPOSITORY TAG IMAGE ID CREATED SIZE localhost/microshift-4.18-bootc latest 193425283c00 2 minutes ago 2.31 GB
REPOSITORY TAG IMAGE ID CREATED SIZE localhost/microshift-4.18-bootc latest 193425283c00 2 minutes ago 2.31 GBCopy to Clipboard Copied! Toggle word wrap Toggle overflow