第6章 RHEL Image Builder を使用した異なるリリースからのシステムイメージの作成
Image Builder を使用して、RHEL 8.8 と RHEL 8.7 のように、ホストとは異なる複数の RHEL マイナーリリースのイメージを作成できます。その際に、リリースディストリビューションフィールドを設定してソースシステムリポジトリーを追加できます。また、正しいリリースディストリビューションフィールドを設定してブループリントを作成することもできます。
また、古い形式の既存のブループリントまたはソースシステムリポジトリーがある場合は、正しいリリースディストリビューションフィールドを設定して、新しいブループリントを作成できます。
サポートされているリリースディストリビューションをリスト表示するには、以下のコマンドを実行します。
$ composer-cli distros list
出力には、サポートされるリリースディストリビューション名のリストが表示されます。
rhel-8 rhel-84 rhel-85 rhel-86 rhel-87 rhel-88 rhel-89
注記RHEL での CentOS イメージのビルドなど、ディストリビューションをまたがるイメージのビルドはサポートされていません。
6.1. CLI での異なるディストリビューションを使用したイメージの作成
RHEL Image Builder CLI でイメージを作成するときに使用するディストリビューションを選択するには、ブループリントで distro
フィールドを設定する必要があります。そのためには、以下の手順に従います。
手順
- 新しいブループリントを作成する場合:
- ブループリントを作成します。以下に例を示します。
name = "<blueprint_name>" description = "<image-description>" version = "0.0.1" modules = [] groups = [] distro = "<distro-version>"
distro
フィールドを "rhel-88" に設定することで、ホストで実行しているバージョンに関係なく、常に RHEL 8.8 イメージがビルドされるようになります。注記distro
フィールドが空の場合は、ホストと同じディストリビューションを使用します。- 既存のブループリントを更新する場合:
- ローカルのテキストファイルに既存のブループリントを保存 (エクスポート) します。
# composer-cli blueprints save EXISTING-BLUEPRINT
既存のブループリントファイルを任意のテキストエディターで編集し、任意のディストリビューションを
distro
フィールドに設定します。次に例を示します。name = "blueprint_84" description = "A 8.8 base image" version = "0.0.1" modules = [] groups = [] distro = "rhel-88"
- ファイルを保存してエディターを閉じます。
ブループリントを RHEL Image Builder にプッシュ (インポート) します。
# composer-cli blueprints push EXISTING-BLUEPRINT.toml
イメージの作成を開始します。
# composer-cli compose start BLUEPRINT-NAME IMAGE-TYPE
Compose が完成するまで待ちます。
Compose のステータスを確認します。
# composer-cli compose status
Compose が完了すると、ステータスが FINISHED になります。リスト内の Compose をその UUID で識別します。
作成されたイメージファイルをダウンロードします。
# composer-cli compose image UUID
UUID は、前の手順で示した UUID 値に置き換えます。