第2章 RHEL bootc イメージのビルドとテスト
Podman と Containerfile を使用して RHEL コンテナーイメージをビルドおよびテストし、複数の環境でブート可能な RHEL システムイメージを効率的に作成、カスタマイズ、共有できます。OpenShift Container Platform などの他のツールを使用することもできます。コンテナーを使用して RHEL システムを設定する例は、rhel-bootc-examples リポジトリーを参照してください。
2.1. Containerfile から bootc ベースのイメージをビルドおよび設定する リンクのコピーリンクがクリップボードにコピーされました!
Containerfile を使用すると、必要なツール、設定、アプリケーションを使用して独自の bootc ベースのイメージをビルドおよびカスタマイズできます。ほとんどの標準命令は機能しますが、イメージがシステムにインストールされるときに一部は無視されます。
図2.1 Containerfile からの指示を使用してイメージを構築し、コンテナーをテストし、イメージをレジストリーにプッシュして他のユーザーと共有する
一般的な Containerfile の構造は次のとおりです。
Containerfile および Dockerfile 内で使用できる利用可能なコマンドは同じです。
ただし、rhel-10-bootc イメージのシステムへのインストール時には、Containerfile 内の以下のコマンドは無視されます。
-
ENTRYPOINTおよびCMD(OCI:Entrypoint/Cmd): 代わりにCMD /sbin/initを設定できます。 -
ENV(OCI:Env):systemd設定を変更して、グローバルシステム環境を設定します。 -
EXPOSE(OCI:exposedPorts): ランタイム時にシステムのファイアウォールやネットワークがどのように機能するかとは無関係です。 -
USER(OCI:User): RHEL bootc 内の個々のサービスを、権限のないユーザーとして実行するように設定します。
rhel-10-bootc コンテナーイメージは OCI イメージ形式を再利用します。
-
rhel-10-bootcコンテナーイメージは、システムへのインストール時にはコンテナー設定セクション (Config) を無視します。 -
rhel-10-bootcコンテナーイメージは、podmanやdockerなどのコンテナーランタイムを使用してこのイメージを実行するときには、コンテナー設定セクション (Config) を無視しません。