3.3. bootc-image-builder を使用した QCOW2 イメージの作成
コマンドを実行しているアーキテクチャーの QEMU ディスクイメージ (QCOW2) のイメージに、RHEL ブート可能コンテナーイメージをビルドします。
RHEL ベースイメージにはデフォルトのユーザーは含まれません。必要に応じて、--config
オプションを使用してユーザー設定を注入し、bootc-image-builder コンテナーを実行できます。あるいは、cloud-init
を使用してベースイメージを設定し、初回起動時にユーザーと SSH キーを注入することもできます。cloud-init を使用したユーザーと SSH キーの注入 を参照してください。
前提条件
- ホストマシンに Podman がインストールされている。
-
ホストマシンに
virt-install
がインストールされている。 -
bootc-image-builder
ツールを実行し、コンテナーを--privileged
モードで実行して、イメージをビルドするための root アクセスがある。
手順
オプション: ユーザーアクセスを設定するための
config.toml
を作成します。次に例を示します。[[blueprint.customizations.user]] name = "user" password = "pass" key = "ssh-rsa AAA ... user@email.com" groups = ["wheel"]
bootc-image-builder
を実行します。必要に応じて、ユーザーアクセス設定を使用する場合は、config.toml
を引数として渡します。注記コンテナーストレージマウントおよび
--local
イメージオプションがない場合は、イメージをパブリックにする必要があります。以下は、パブリック QCOW2 イメージを作成する例です。
$ sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v ./config.toml:/config.toml \ -v ./output:/output \ -v /var/lib/containers/storage:/var/lib/containers/storage \ registry.redhat.io/rhel9/bootc-image-builder:latest \ --type qcow2 \ --config config.toml \ quay.io/<namespace>/<image>:<tag>
以下は、プライベート QCOW2 イメージを作成する例です。
$ sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v ./config.toml:/config.toml \ -v ./output:/output \ registry.redhat.io/rhel9/bootc-image-builder:latest \ --type qcow2 \ --config config.toml \ quay.io/<namespace>/<image>:<tag>
.qcow2
イメージは出力フォルダーにあります。
次のステップ
- イメージをデプロイできます。QCOW2 ディスクイメージを使用した KVM でのコンテナーイメージのデプロイ を参照してください。
- イメージを更新し、変更をレジストリーにプッシュできます。RHEL のブート可能なイメージの管理 を参照してください。