podman-container-tools/podman
运维与部署无需常驻守护进程即可在 Linux、macOS 和 Windows 上运行和管理 OCI 容器与 Pod 的工具。
项目介绍
Podman 是一个容器引擎,用来管理 OCI 和 Docker 镜像、容器、卷以及由多个容器组成的 Pod。它不依赖常驻的管理守护进程,因此空闲时资源占用更低,也没有一个集中运行的特权服务。仓库同时包含 libpod 这个负责容器生命周期管理的 Go 库;Podman 对外提供兼容 Docker 的命令行接口,以及一套包含 Podman 特有能力的 REST API。
在 Linux 上 Podman 可以直接运行,也能以普通用户身份借助用户命名空间运行 rootless 容器。在 macOS 和 Windows 上,容器运行在由 Podman 管理的虚拟机中;Podman Desktop 则为本地 Podman 与 Kubernetes 开发提供图形界面。镜像构建交给 Buildah,网络由 Netavark 和 Aardvark DNS 处理,OCI 运行时的监控交给 Conmon,运行时本身可以是 crun 或 runc。
快速使用
- 按安装指南为你的平台安装 Podman。Linux 上通常使用发行版软件包;macOS 和 Windows 需要
podman machine提供的虚拟机支持。 - 运行 hello 镜像验证安装:
podman run quay.io/podman/hello
该命令会拉取 quay.io/podman/hello 并启动它,输出包含项目链接的 ASCII 容器图案,同时显示镜像拉取、blob 复制和签名复制的过程。已有 Docker 工作流的用户可参考命令迁移对照表。如果希望使用图形界面,可以安装 Podman Desktop 并连接本地 Podman。
使用约束
rootless 模式需要管理员先完成一些主机配置,具体步骤和已知的功能限制有单独文档说明。rootless 容器永远不会获得超过启动它的用户的权限,即使启用了容器内的高权限选项也是如此。上游仅支持最新版本,偶尔提供 LTS 版本;发布包经过 PGP 签名,每年发布四次主版本或次版本。镜像签名和向各类存储后端推送镜像不在 Podman 范围内,由 Skopeo 负责;Kubernetes CRI 接口则由 CRI-O 提供。Podman 与 Buildah 使用不同的存储,因此在其中一方创建的容器在另一方不可见。
HotRepo 点评
在 HotRepo 的记录中,该项目于 2026-11-11 登上 Go 语言周榜第 18 名,当周新增 73 个 Star,累计 33,242 个 Star、3,456 个 Fork。项目创建于 2017 年,属于长期维护的工具,单次快照不足以判断趋势。技术上更值得注意的是它的架构取舍:提供兼容 Docker 的 CLI 与 API 却没有管理守护进程,把 rootless 作为一等运行方式,并与 Buildah、CRI-O 明确分工,而不是试图覆盖容器工具链的所有角色。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。
相关推荐
- google/gvisor为用户态 Linux 内核与 OCI 运行时,让运行不可信代码的容器不再与宿主机共享内核。
- containerd/containerd面向 Linux 和 Windows 的容器运行时守护进程,负责镜像传输、容器执行与存储,供平台和 Kubernetes 等上层系统嵌入使用。
- kubernetes/kubernetes面向平台团队的多主机容器编排系统,负责调度、扩缩容与运维容器化工作负载。
- moby/mobyDocker 的上游容器引擎:可用来拼装定制容器平台,或用 Go 客户端对接 Engine API。
- moby/buildkit把源代码或 Dockerfile 高效、可并发地构建成容器镜像及其他产物的构建工具包。