8.5. コンテナーイメージを小さいバージョンに最適化する
bootc-base-imagectl rechunk サブコマンドを使用して rpm-ostree と対話し、イメージの再チャンク化を実行できます。
rpm-ostree は大きなイメージを取得し、それを再チャンク化できます。このプロセスにより、インストールされたパッケージの順序付けとグループ化が最終イメージ内の多くのレイヤーに最適化され、転送を必要とせずに複数のレイヤーを再利用できるため、ネットワーク効率が向上します。
スクラッチビルドの出力は、単一の大きなレイヤー (tar) を持つイメージです。カーネルの更新など、入力に対して行うすべての変更により、bootc イメージの内容全体を含む新しいレイヤーが作成されます。この新しいレイヤーは、プッシュされ、レジストリーに保存され、クライアントによってプルされる必要があります。
bootc-base-imagectl は、bootc イメージの一部として同梱されます。ホストコンテナーストレージをコンテナーにマッピングし、その中で bootc-base-imagectl を実行して再チャンク化操作を行うことで、既存のイメージを使用してカスタムベースイメージを再チャンク化できます。
前提条件
- 以前にビルドされたベースイメージがある。
手順
ベースイメージを再チャンク化するには、次のコマンドを実行します。
$ sudo podman run --rm --privileged -v /var/lib/containers:/var/lib/containers \ registry.redhat.io/rhel10/rhel-bootc:latest \ /usr/libexec/bootc-base-imagectl rechunk \ quay.io/exampleos/rhel-bootc:single \ quay.io/exampleos/rhel-bootc:chunked