列出容器
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2bc9b1988080 redis "docker-entrypoint.sh" 2 weeks ago Up 2 hours 0.0.0.0:6379->6379/tcp elephant-redis
817879be2230 postgres "/docker-entrypoint.s" 2 weeks ago Up 2 hours 0.0.0.0:65432->5432/tcp pt-postgres
docker ps
本身只打印当前正在运行的容器。要查看所有容器(包括已停止的容器),请使用 -a
标志:
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9cc69f11a0f7 docker/whalesay "ls /" 26 hours ago Exited (0) 26 hours ago berserk_wozniak
2bc9b1988080 redis "docker-entrypoint.sh" 2 weeks ago Up 2 hours 0.0.0.0:6379->6379/tcp elephant-redis
817879be2230 postgres "/docker-entrypoint.s" 2 weeks ago Up 2 hours 0.0.0.0:65432->5432/tcp pt-postgres
要列出具有特定状态的容器,请使用 -f
命令行选项筛选结果。以下是列出已退出的所有容器的示例:
$ docker ps -a -f status=exited
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9cc69f11a0f7 docker/whalesay "ls /" 26 hours ago Exited (0) 26 hours ago
也可以使用 -q
开关仅列出 Container ID。这使得使用其他 Unix 实用程序(例如 grep
和 awk
)对结果进行操作非常容易:
$ docker ps -aq
9cc69f11a0f7
2bc9b1988080
817879be2230
当使用 docker run --name mycontainer1
启动容器时,你会给出一个特定的名称,而不是一个随机的名字(形式为 mood_famous,例如 nostalgic_stallman),并且可以很容易地用这样的命令找到它们
docker ps -f name=mycontainer1