[工具]Podman命令大全

441 阅读2分钟

一、基本管理​

​命令​​说明​
podman version查看 Podman 版本
podman info显示系统级信息(存储、OCI运行时等)
podman run <image>创建并启动容器
podman ps列出运行中的容器
podman ps -a列出所有容器(含已停止的)
podman start <container>启动容器
podman stop <container>停止容器
podman restart <container>重启容器
podman rm <container>删除容器(加 -f 强制删除运行中的)

​二、镜像操作​

​命令​​说明​
podman pull <image>拉取镜像(例: podman pull ubuntu:22.04
podman images列出本地镜像
podman search <term>搜索远程镜像(如 podman search nginx
podman rmi <image>删除镜像
podman build -t <name> .构建镜像(使用当前目录的 Dockerfile)
podman save -o file.tar <image>导出镜像到文件
podman load -i file.tar从文件导入镜像

​三、容器操作​

​命令​​说明​
podman exec -it <container> <cmd>在容器内执行命令(例: /bin/bash
podman logs <container>查看容器日志
podman inspect <container>显示容器详细信息(JSON 格式)
podman cp <container>:<src> <dest>从容器复制文件到主机
podman commit <container> <new_image>将容器保存为新镜像

​启动容器常用参数​​:

podman run -d \          # 后台运行
  --name mycontainer \   # 设置容器名
  -p 8080:80 \           # 端口映射(主机:容器)
  -v /host/path:/data \  # 卷挂载
  -e KEY=VALUE \         # 环境变量
  --rm \                 # 退出时自动删除
  nginx                  # 镜像

​四、Pod 管理(Podman 特色)​

​命令​​说明​
podman pod create --name <pod_name>创建空 Pod
podman run --pod <pod_name> <image>在 Pod 中启动容器
podman pod ls列出所有 Pod
podman pod stop <pod>停止 Pod 内容器
podman pod rm <pod>删除 Pod
podman pod inspect <pod>查看 Pod 详细信息

Pod 允许多个容器共享网络/存储命名空间(类 Kubernetes Pod)。


​五、网络管理​

​命令​​说明​
podman network ls列出网络
podman network create <net_name>创建新网络
podman run --network=<net_name> ...容器加入指定网络
podman network inspect <net_name>检查网络详情
podman network rm <net_name>删除网络

​六、卷(Volume)管理​

​命令​​说明​
podman volume create <vol_name>创建卷
podman volume ls列出卷
podman run -v <vol_name>:/data ...挂载卷到容器
podman volume rm <vol_name>删除卷

七、具体操作(以postgresql为例)

​1. 拉取 PostgreSQL 镜像​

podman pull postgres:latest  # 拉取最新版
podman pull postgres:15 # 指定版本

​2. 启动 PostgreSQL 容器​

podman run -d \
  --name my-postgres \
  -e POSTGRES_USER=myuser \
  -e POSTGRES_PASSWORD=mypassword \
  -e POSTGRES_DB=mydb \
  -p 5432:5432 \
  -v postgres-data:/var/lib/postgresql/data \
  postgres:latest

​参数说明​​:

  • -d:后台运行
  • --name:容器名称
  • -e:环境变量(必设用户名/密码/数据库)
  • -p 5432:5432:主机端口:容器端口映射
  • -v:数据卷持久化(如果出错的和可以把这行删了)

3. 常用管理操作​

​操作​​命令​
​进入容器​podman exec -it my-postgres bash
​连接数据库​podman exec -it my-postgres psql -U myuser -d mydb
​查看日志​podman logs -f my-postgres
​停止容器​podman stop my-postgres
​启动容器​podman start my-postgres
​删除容器​podman rm -f my-postgres

一键启动所有容器:podman start $(podman ps -aq)