第2章 RHEL bootc イメージのビルドとテスト
RHEL bootc イメージは、Podman、Containerfiles、OpenShift Container Platform など、アプリケーションコンテナーと同じツールと手法を使用してビルド、テスト、デプロイできます。単一のコンテナーネイティブワークフローに集約して、アプリケーションから基盤となるオペレーティングシステムまですべてを管理できます。
2.1. Containerfile から bootc ベースのイメージをビルドおよび設定する リンクのコピーリンクがクリップボードにコピーされました!
Containerfile でシステム仕様を定義することで、Red Hat Enterprise Linux の bootc ベースのイメージを構築および設定できます。お客様固有のデプロイメント要件に合わせて、カスタマイズ可能で再現性があり、スケーラブルなコンテナーネイティブのオペレーティングシステムを生成できます。
一般的な Containerfile の構造は次のとおりです。
FROM registry.redhat.io/rhel10/rhel-bootc:latest
RUN dnf -y install [software] [dependencies] && dnf clean all
ADD [application]
ADD [configuration files]
RUN [config scripts]
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) を無視しません。