第 2 章 构建和测试 RHEL bootc 镜像


您可以使用 Podman 和 Containerfiles 构建和测试 RHEL 容器镜像,以便跨环境有效地创建、自定义和共享可引导的 RHEL 系统镜像。您也可以使用其他工具,如 OpenShift Container Platform。有关使用容器配置 RHEL 系统的更多信息,请参阅 rhel-bootc-examples 存储库。

您可以使用 Containerfile 构建和自定义基于引导的镜像,其中包含您需要的工具、配置和应用程序。虽然大多数标准指令都可以正常工作,但在系统上安装镜像时会忽略一些操作。

图 2.1. 使用 Containerfile 中的指令构建镜像,测试容器,将镜像推送到 registry,并与其他人共享它

通用 Containerfile 结构如下:

FROM registry.redhat.io/rhel10/rhel-bootc:latest

RUN dnf -y install [software] [dependencies] && dnf clean all

ADD [application]
ADD [configuration files]

RUN [config scripts]
Copy to Clipboard Toggle word wrap

可以在 ContainerfileDockerfile 中使用的命令一样。

但是,当将 rhel-10-bootc 镜像安装到系统时,Containerfile 中的以下命令会被忽略:

  • ENTRYPOINTCMD (OCI: Entrypoint/Cmd):您可以设置 CMD /sbin/init
  • ENV (OCI: Env): 更改 systemd 配置以配置全局系统环境。
  • EXPOSE (OCI: exposePorts):它独立于系统防火墙和运行时网络功能。
  • USER (OCI: User):配置 RHEL bootc 中的单个服务,以作为非特权用户运行。

rhel-10-bootc 容器镜像重复利用 OCI 镜像格式。

  • rhel-10-bootc 容器镜像在安装到系统时会忽略容器配置部分(Config)。
  • 当使用容器运行时(如 podmandocker )运行此镜像时,rhel-10-bootc 容器镜像不会忽略容器配置部分(Config)。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat