云溪的 blog
  • Archive
  • Media
  • Search
  • Tags
  • About
Home » Tags

容器

我为什么切换到 Podman

最近我把本地的容器管理引擎切换到了 Podman,本篇文章来讲讲我为什么从 Docker 切换到 Podman。 兼容 Docker Podman 对 Docker 的兼容非常好,Podman CLI 和 Docker CLI 命令几乎一致,这样就大大降低了切换成本,你甚至可以把 Podman CLI 就当作 Docker CLI 来用。 无守护进程 Docker 有一个守护进程 dockerd 负责管理容器、镜像和网络,Docker CLI 所有的指令都是通过 dockerd 来实际执行的。 Podman 却没有这样一个守护进程来处理,Podman CLI 会启动一个 conmon 进程来管理容器的生命周期,启动 conmon 后 Podman CLI 退出了,只有 conmon 带着它管理的容器作为系统进程保留了下来。 这种无守护进程的模式带来了很多好处: 我的系统不用一直启动一个 dockerd 守护进程,减少了系统资源的占用。 不会因为 dockerd 的异常退出导致所有容器崩溃 支持 rootless Podman 支持以普通用户运行而 docker 默认情况下是以 root 用户来运行的。当发生容器逃逸时 Docker 能拿到 root 权限而 Podman 会将影响范围限制到用户层面,降低了风险的影响范围。 更方便的网络设计 Podman rootless 默认使用的是 slirp4netns 它仅能给单容器提供网络服务,不能提供容期间的通讯,如果想容器间进行通讯就只能通过物理机映射端口或者把容器加入到同一个 pod 进行通讯了。 ...

August 9, 2025 · 1 min · 云溪
© 2025 云溪的 blog