【ポッドマン】

Podman とは?

最終更新:
💡 コンテナとPodを、デーモンレスでも管理できる

コンテナやPod、イメージを管理するオープンソースのツール。Linuxで中央の常駐デーモンを必須にせず動作し、一般ユーザーによるrootless実行にも対応する。

📌 このページのポイント
Linux上のCLI操作を簡略化した比較Docker EnginePodmandocker CLIpodman CLIdockerd中央の管理デーモンを必須にしないコンテナコンテナコンテナコンテナどちらもrootless実行に対応PodmanのmacOS/Windows利用にはLinux VMが必要。
内部の実行・監視処理を省略した比較。デーモンレスは、全ての常駐プロセスがないという意味ではない。Podmanは必要に応じてAPIサービスも利用できる。
ひよこ ひよこ
Dockerと同じコマンドで使える?
ペンギン先生 ペンギン先生
似たCLIで、たとえば「podman run」でコンテナを実行するよ。ただし全てのオプションや連携ツールがそのまま置き換わる保証ではない。移行では使っている機能を確認しよう。
ひよこ ひよこ
デーモンレスって?
ペンギン先生 ペンギン先生
Linuxでコンテナを操作するとき、中央の管理デーモンを必須にしない設計だよ。必要に応じてAPIサービスを動かす形もあるので、バックグラウンドのプロセスが一切ないという意味ではないんだ。
ひよこ ひよこ
rootlessなら絶対に安全?
ペンギン先生 ペンギン先生
ホストの一般ユーザーとして実行する方式で、ユーザーIDの割り当てなどの設定が必要だよ。安全性は権限や構成にも左右される。Dockerにもrootlessモードがあるので、「Dockerは必ずrootで動く」という比較は正確ではないんだ。
ひよこ ひよこ
PodやComposeも使える?
ペンギン先生 ペンギン先生
Podは複数のコンテナをまとめて扱う単位だよ。また「podman compose」は外部のCompose実装を呼び出す仕組み。PodとComposeは同じものではなく、使う実装や設定も確認する必要があるんだ。
ひよこ ひよこ
WindowsやMacでも動く?
ペンギン先生 ペンギン先生
Linuxの仮想マシンを使って動くよ。「podman machine」はその仮想マシンを管理するコマンドなんだ。図はLinux上のCLI操作を簡略化した比較で、全OSにそのまま当てはめる図ではないよ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Podman」って出てきたら「デーモンレスやrootlessにも対応する、コンテナとPodの管理ツール」と思えばだいたいOK!
📖 おまけ:英語の意味
「Podman」 = ポッドマン(製品名)
💬 コンテナに加えてPodも扱えるツールだよ。Podはコンテナをまとめる単位で、Podmanを入れればKubernetesクラスタの管理を全て代替できるという意味ではないんだ。

参考資料

← 用語集にもどる