4.10. 使用 bootc-image-builder ,使用 Kickstart 文件构建 ISO 镜像
您可以使用 Kickstart 文件配置 RHEL 安装过程的各个部分,如设置用户、自定义分区和添加 SSH 密钥。您可以在 ISO 构建中包含 Kickstart 文件,来配置安装过程的任何部分,但基础镜像的部署除外。对于带有 bootc 容器基础镜像的 ISO,您可以使用 Kickstart 文件配置除 ostreecontainer 命令以外的所有安装设置。
例如,您可以使用 Kickstart 执行部分安装、全安装,甚至省略用户创建。使用 bootc-image-builder 构建一个包含自定义 Kickstart 的 ISO 镜像,来配置您的安装过程。
先决条件
- 您已在主机机器上安装了 Podman。
-
您有运行
bootc-image-builder工具的 root 访问权限,并在--privileged模式下运行容器,以构建镜像。
流程
创建 Kickstart 文件。以下 Kickstart 文件是一个完全无人值守的 Kickstart 文件配置的示例,其包含用户创建和分区指令。
[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>您可以在 output 文件夹中找到
.iso镜像。
后续步骤
您可以对无人值守安装方法(如 USB 盘或 Install-on-boot)使用 ISO 镜像。可安装的引导 ISO 包含一个配置的 Kickstart 文件。请参阅 使用 Anaconda 和 Kickstart 部署容器镜像。
警告在带有现有操作系统或数据的机器上引导 ISO 可能是破坏性的,因为 Kickstart 被配置为自动重新格式化系统上的第一块磁盘。
- 您可以对镜像进行更新,并将更改推送到注册中心。请参阅 管理 RHEL 可引导镜像。