可以自己指定显示的模板,例如:
docker ps --format "table {{.ID}} {{.Names}} {{.Ports}}"
- table - 表示显示表头列名
- {{.ID}} - 容器ID
- {{.Command}} - 启动执行的命令
显示结果:
$ docker ps --format "table {{.ID}} {{.Names}} {{.Ports}}" CONTAINER ID NAMES PORTS db3df460fe14 dev-peer0.org1.example.com-fabcar-1.0 b6f803814cce cli 10724ca7364f peer0.org1.example.com 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp 20d930e6e9f7 ca.example.com 0.0.0.0:7054->7054/tcp
可用的占位符
名称 | 含义 |
---|---|
.ID | 容器ID |
.Image | 镜像ID |
.Command | 执行的命令 |
.CreatedAt | 容器创建时间 |
.RunningFor | 运行时长 |
.Ports | 暴露的端口 |
.Status | 容器状态 |
.Names | 容器名称 |
.Label | 分配给容器的所有标签 |
.Mounts | 容器挂载的卷 |
.Networks | 容器所用的网络名称 |
docker ps --filter id=a1b2c3 --filter name=bingohuang
CONTAINER ID: 容器 ID。
IMAGE: 使用的镜像。
COMMAND: 启动容器时运行的命令。
CREATED: 容器的创建时间。
STATUS: 容器状态。
状态有7种:
- created(已创建)
- restarting(重启中)
- running(运行中)
- removing(迁移中)
- paused(暂停)
- exited(停止)
- dead(死亡)
PORTS: 容器的端口信息和使用的连接类型(tcpudp)。
NAMES: 自动分配的容器名称。
根据条件过滤显示的内容
根据标签过滤
$ docker run -d --name=test-nginx --label color=blue nginx
$ docker ps --filter "label=color"
$ docker ps --filter "label=color=blue"
根据名称过滤
$ docker ps --filter"name=test-nginx"
根据状态过滤
$ docker ps -a --filter 'exited=0'
$ docker ps --filter status=running
$ docker ps --filter status=paused
根据镜像过滤
#镜像名称
$ docker ps --filter ancestor=nginx
#镜像ID
$ docker ps --filter ancestor=d0e008c6cf02
根据启动顺序过滤
$ docker ps -f before=9c3527ed70ce
$ docker ps -f since=6e63f6ff38b0