Podman 是面向开发者和运维的容器引擎,无守护进程、默认 rootless,提供 Docker 兼容 CLI;containerd 是底层容器运行时,负责镜像、容器生命周期和 CRI,是 Kubernetes 节点的核心组件。它们不在同一层:本地开发选 Podman,节点运行时选 containerd。
| 维度 | Podman | containerd |
|---|---|---|
| 定位 | 容器引擎/CLI | 容器运行时 |
| 守护进程 | 无(fork/exec) | 有 containerd 服务 |
| rootless | 默认支持 | 取决于配置 |
| CLI | podman,兼容 Docker |
ctr/crictl/nerdctl |
| Kubernetes | 可生成/运行 Pod YAML | CRI 运行时 |
| 镜像构建 | Buildah/podman build | 不负责构建 |
| 典型场景 | 本地开发、单机、rootless | K8s 节点、容器运行时 |
podman run --rm -it alpine sh
crictl ps
ctr -n k8s.io containers list
podman 当成 K8s 运行时。k8s.io)不同,ctr 和 crictl 看到的对象可能不同。podman — 容器引擎containerd / crictl — 容器运行时nerdctl — containerd 的 Docker 风格 CLI