11.9. systemd を使用したコンテナーの自動更新
Podman を使用したコンテナーの自動更新 セクションで述べたように、
podman auto-update コマンドを使用してコンテナーを更新できます。カスタムスクリプトに組み込み、必要に応じて呼び出すことができます。コンテナーを自動更新するもう 1 つの方法は、プリインストールされている podman-auto-update.timer および podman-auto-update.service systemd サービスを使用することです。podman-auto-update.timer は、特定の日付と時刻で自動更新をトリガーするように設定できます。podman-auto-update.service は、systemctl コマンドによってさらに開始することも、他の systemd サービスによる依存関係として使用することもできます。その結果、時間およびイベントに基づく自動更新は、個々のニーズやユースケースを満たすためにさまざまな方法でトリガーできます。
podman v4.6 以降では、Quadlets を使用できるようになりました。Quadlets を使用すると、通常の systemd ユニットファイルと同様の形式でコンテナーを実行する方法を記述でき、systemd でコンテナーを実行する際の複雑さを意識せずに済みます。
前提条件
-
container-toolsメタパッケージがインストールされている。
手順
podman-auto-update.serviceユニットファイルを表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman-auto-update.timerユニットファイルを表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、
podman auto-updateコマンドは、毎日、深夜に起動します。システム起動時に
podman-auto-update.timerサービスを有効にします。systemctl enable podman-auto-update.timer
# systemctl enable podman-auto-update.timerCopy to Clipboard Copied! Toggle word wrap Toggle overflow systemdサービスを開始します。systemctl start podman-auto-update.timer
# systemctl start podman-auto-update.timerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、すべてのタイマーをリスト表示します。
systemctl list-timers --all
# systemctl list-timers --all NEXT LEFT LAST PASSED UNIT ACTIVATES Wed 2020-12-09 00:00:00 CET 9h left n/a n/a podman-auto-update.timer podman-auto-update.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow podman-auto-update.timerがpodman-auto-update.serviceを有効化したことが確認できます。