Files
docker_practice/podman
Baohua Yang 8bdb8406f9 Fix words
2026-01-10 22:39:51 -08:00
..
2026-01-10 22:39:51 -08:00

podman

podman 是一个无守护进程、与 Docker 命令高度兼容的下一代 Linux 容器工具。它由 Red Hat 开发,旨在提供一个更安全的容器运行环境。

Podman vs Docker

特性 Docker Podman
架构 C/S 架构,依赖守护进程 (dockerd) 无守护进程 (Daemonless)
权限 默认需要 root 权限 (虽有 Rootless 模式) 默认支持 Rootless (非 root 用户运行)
生态 完整的生态系统 (Compose, Swarm) 专注单机容器,配合 Kubernetes 使用
镜像构建 docker build podman buildbuildah

安装

CentOS / RHEL

$ sudo yum -y install podman

macOS

macOS 上需要安装 Podman Desktop 或通过 Homebrew 安装:

$ brew install podman
$ podman machine init
$ podman machine start

使用

podman 的命令行几乎与 docker 完全兼容,大多数情况下,你只需将 docker 替换为 podman 即可。

运行容器

# $ docker run -d -p 80:80 nginx:alpine

$ podman run -d -p 80:80 nginx:alpine

列出容器

$ podman ps

构建镜像

$ podman build -t myimage .

Pods 的概念

与 Docker 不同Podman 支持 "Pod" 的概念(类似于 Kubernetes 的 Pod允许你在同一个网络命名空间中运行多个容器。

# 创建一个 Pod
$ podman pod create --name mypod -p 8080:80

# 在 Pod 中运行容器
$ podman run -d --pod mypod --name webbing nginx

迁移到 Podman

如果你习惯使用 docker 命令,可以简单地设置别名:

$ alias docker=podman

参考