12.5. シーリングされたイメージのライフサイクル操作の管理
ダイジェストを再計算し、更新されたファイルシステムと一致する新しい署名付き UKI を生成するには、イメージを再シーリングする必要があります。シーリングされた bootc イメージの root ファイルシステムを変更すると、その変更により、Unified Kernel Image (UKI) に埋め込まれた composefs ダイジェストが無効になります。
前提条件
-
マルチステージの
Containerfileがある。 -
セキュアブート用の秘密鍵 (
secureboot.key) と証明書 (secureboot.crt) にアクセスできる。
手順
-
Containerfileのrootfsステージに変更を適用します。 セキュアブート用のシークレットを使用して
podman buildコマンドを実行し、シーリングされたイメージを再ビルドします。$ podman build --secret id=secureboot_key,src=/path/to/secureboot.key --secret id=secureboot_cert,src=/path/to/secureboot.crt -t quay.io/<namespace>/my-sealed-bootc:latest .更新されたイメージをレジストリーにプッシュします。
$ podman push quay.io/<namespace>/my-sealed-bootc:latestデプロイ済みのシステムをアップグレードし、新しくシーリングされたイメージを取得して適用します。
$ sudo bootc upgrade
検証
システムが正常に起動し、更新されたイメージが表示されることを確認します。
$ sudo bootc statuscomposefsダイジェストが正しく適用されていることを確認します。$ sudo journalctl -b | grep composefsfsverityの強制適用が有効になっていることを確認します。$ sudo dmesg | grep fsverity