Podman
Pod Managerの略
containersのひとつ
daemon less で Docker っぽいOCIコンテナが扱えるRedHatからCNCFに渡ったもの、らしい。Windows上ではVM(WSL2 または Hyper-V)が必要。
podman-compose, Podman Desktop とdockerと同じようなものがざっくりそろっている、らしい。Wasm系にも対応したらしい。
daemon less 管理系機能にdaemonが必要ない
rootless 一般ユーザで利用可能
Kubernetes なPodなどに対応
systemd unit対応 (Podman Quadlet)
wasm 対応?
などが特徴
https://podman.io/
インストール
Windows
(管理者権限で? )ターミナル、コマンドプロンプト、PowerShellなどを開く
WSL2を有効にする
$ wsl --install
または最新版にする
$ wsl --update
コマンドプロンプトでインストール または Podman Desktop からインストール
$ winget install RedHat.Podman
Ubuntu
$ apt install podman
管理機能
Podman
ビルド環境
Buildah
podman farm
コンテナ管理/image操作
Skopeo
実行?
crun
runc
cri-o Kubernetes用コンテナ実行 https://cri-o.io/
ねっとわーく
Netavark
Podmanにもだいたい統合されているっぽい
Hub?
Red Hat Quay
GitHub ghcr.io
Settings > Developer Settings > personal access token (classic) で認証
read:packages 権限
https://docs.github.com/ja/packages/working-with-a-github-packages-registry/working-with-the-container-registry
Google Cloud gcr.io
Docker Hub など互換
Kubernetes系の設定ファイルも使える?
Minikube
Kind
OpenShift Local
kubectl
Lima
Compose系仕様にも対応していた
Podman Compose
Docker Compose 利用可能
systemd で管理が可能
podman generate systemd v4.7.0 ぐらいまで
以降は Quadlet
Quadlet で別の管理方法ができるかも v4.4.0 か v4.6.0 以降
Podman Quadlet
Docker互換性
コンテナ対応
Dockerfile の他に Containerfile も使える
Docker Hub利用可能
コマンド互換
daemon不要(WIn/MacでVMは必要)
ユーザモードが簡単
podman compose は docker-compose または podman-compose のalias
buildx は一部使えない? マルチアーキテクチャは苦手そう
Compose 系は3か4くらいから対応
Swarm 未対応 Pod/Kubernetes推奨
Windows上ではFedora または Fedora Coreを使っているっぽい? 専用のVMに移行するらしい Windowsのコマンドはリモート実行用のもの
Windows (WSL2)のカーネルは複数ディストリビューションで共有され、Podmanでも共有され細切れで使われている
Podman 4.8.0 以降 (Windows) で Hyper-Vを使う
Hyper-V を有効にする
https://rheb.hatenablog.com/entry/podman-machine-on-hyperv
https://github.com/containers/podman/pull/17838
podman compose は docker compose plugin っぽいことをしているが、docker-compose または podman-compose のコマンドを実行している /usr/local/bin などに配置するとよい
podman-compose は podmanを見てる?
UNIX Socket を利用しているので接続先次第 Docker ComposeからPodmanも利用可能
Podman in Action 入門?
https://developers.redhat.com/e-books/podman-action
https://bookwalker.jp/de0f597141-db8e-4ccf-a155-77b09a1ec324/?acode=eiZS2S8C
Podman farm 複数アーキテクチャビルドを実機で分散させることができる?
初期設定 (Windows)
podman desktop Version 1.15.0
インストール podman Version 5.3.1 (VMは4.8.1?)
Podman Desktop の 設定 から Podman Machine を作る (Podman を実行するLinux VM)
WASMを有効にしたい場合は podman machine init
Podman Compose または Docker ComposeをPATHの通ったところにインストールする
Kubernetes が必要な場合はそれ系のものもインストールできる
wsl --list でVMが登録されているのが確認できる
Windows Terminal から直接VMに入ったり、wsl コマンドから入ったりできる
RedHat
https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux/9/html/building_running_and_managing_containers/index
削除? Windows
.config/containers/
AppData/
Local/
Programs/
podman-desktop/
podman-desktop-updater/
Roaming/
containers/
https://www.youtube.com/watch?v=08MRsmz7g_0