6.10. 使用 bootc-image-builder ,使用 Kickstart 文件构建 ISO 镜像
您可以使用 bootc-image-builder 工具创建可安装的 ISO 镜像。anaconda-iso 或 iso 镜像类型会创建一个可引导程序,它使用 Anaconda 安装程序将 bootc 镜像部署到目标系统。
使用 bootc-image-builder 创建并部署可引导 ISO 镜像,作为技术预览提供。此工作流依赖于 %ostreecontainer Kickstart 命令,它是一个技术预览功能。红帽产品服务级别协议(SLA)不支持技术预览功能,且其功能可能并不完善,因此红帽不建议在生产环境中使用它们。如需更多信息,请参阅技术预览功能支持范围。
先决条件
- 您已在主机机器上安装了 Podman。
-
您有运行
bootc-image-builder工具的 root 访问权限,并在--privileged模式下运行容器,以构建镜像。
流程
创建 Kickstart 文件。以下 Kickstart 文件是一个完全无人值守的 Kickstart 文件配置示例,其中包含用户创建、启用本地化模块和分区说明。
#Enable the Anaconda Localization module on RHEL to enable keyboard or locale changes [customizations.installer.modules] enable = ["org.fedoraproject.Anaconda.Modules.Localization"] [customizations.installer.kickstart] contents = """ lang en_GB.UTF-8 keyboard uk timezone CET user --name <user> --password <password> --plaintext --groups <groups> sshkey --username <user> ssh-<type> <public key> rootpw --lock zerombr clearpart --all --initlabel autopart --type=plain reboot --eject """-
以
toml格式保存 Kickstart 配置,以注入 Kickstart 内容。例如,config.toml。 运行
bootc-image-builder,并包含您要添加到 ISO 构建的 Kickstart 文件配置。bootc-image-builder会自动添加安装容器镜像的ostreecontainer命令。$ sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v /var/lib/containers/storage:/var/lib/containers/storage \ -v ./config.toml:/config.toml \ -v ./output:/output \ registry.redhat.io/rhel10/bootc-image-builder:latest \ --type iso \ --config /config.toml \ quay.io/<namespace>/<image>:<tag>您可以在输出目录中找到
.iso镜像。
后续步骤
您可以对无人值守安装方法(如 USB 盘或 Install-on-boot)使用 ISO 镜像。可安装的引导 ISO 包含一个配置的 Kickstart 文件。安装程序会根据 Kickstart 文件中的
非互动标记自动运行,应用您定义的自定义 LVM 分区。请参阅 使用 Anaconda 和 Kickstart 部署容器镜像。警告在带有现有操作系统或数据的机器上引导 ISO 可能是破坏性的,因为 Kickstart 被配置为自动重新格式化系统上的第一块磁盘。
- 您可以对镜像进行更新,并将更改推送到注册中心。请参阅 管理 RHEL 可引导镜像。