docker ps -a 命令用于列出所有的 Docker 容器,包括正在运行的容器和已经停止的容器。
语法:
docker ps -a
功能:
- 默认情况下,
docker ps只会列出当前正在运行的容器。 - 使用
-a或--all选项后,docker ps -a会列出所有的容器,无论它们是否在运行。
输出字段:
docker ps -a 的输出通常包括以下字段:
- CONTAINER ID:容器的唯一 ID。
- IMAGE:容器所使用的镜像名称。
- COMMAND:容器启动时执行的命令。
- CREATED:容器创建时间。
- STATUS:容器的当前状态(例如:
Up 5 minutes,Exited (0) 3 hours ago)。 - PORTS:容器暴露的端口和映射情况。
- NAMES:容器的名称。
示例:
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a1b2c3d4e5f6 ubuntu "bash" 3 hours ago Exited (0) 2 hours ago thirsty_morse
7g8h9i0j1k2l nginx "/docker-entrypoint.…" 4 days ago Up 3 hours 80/tcp nginx-container
a1b2c3d4e5f6是一个已经停止的容器。7g8h9i0j1k2l是一个正在运行的容器。
其他相关选项:
docker ps -aq:只显示容器 ID。docker ps -f "status=exited":只列出已经退出的容器。docker ps -n 5:列出最近的 5 个容器。
容器的三种状态
Up: 表示容器正在运行中。当容器启动后,Docker会自动将其状态设置为Up。此时可以使用docker ps命令查看容器的状态。
Created: 表示容器已经被创建,但还未启动。当我们使用docker run命令创建一个新的容器时,Docker会将其状态设置为Created,此时容器的文件系统和元数据已经存在,但容器内部的进程还未启动。
Exit: 表示容器已经停止运行。当容器中的进程停止或者容器被手动停止时,Docker会将其状态设置为Exit。此时可以使用docker ps -a命令查看容器的状态,其中Exited字段表示容器的状态为Exit。
Up、Created和Exit是Docker中常见的容器状态。通过管理容器状态,我们可以实现对容器的启动、停止、重启、删除等操作,从而更好地管理Docker容器。