1. Docker容器管理基础:为什么需要查看运行中的容器?
在Ubuntu系统中使用Docker进行开发和部署时,了解当前运行的容器状态是日常运维的基础操作。就像汽车仪表盘显示车速和油量一样,掌握容器运行状态能帮助我们:
- 快速确认服务是否正常启动
- 发现异常停止的容器实例
- 统计资源占用情况
- 排查端口冲突等问题
docker ps命令就是我们的"容器仪表盘",但很多开发者对这个简单命令的理解只停留在表面。实际上,通过不同的参数组合,我们可以获取不同维度的容器信息。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心命令解析:docker ps的完整使用指南
2.1 基础命令格式
bash复制sudo docker ps [选项]
注意:虽然大多数Docker命令不需要sudo权限,但默认安装情况下普通用户需要sudo才能执行docker命令。可以通过将用户加入docker组来免去sudo(
sudo usermod -aG docker $USER)
2.2 常用参数详解
| 参数 | 作用 | 典型使用场景 |
|---|---|---|
| -a / --all | 显示所有容器(包括已停止的) | 检查历史容器记录 |
| -q / --quiet | 只显示容器ID | 用于批量操作脚本 |
| -s / --size | 显示容器占用空间 | 磁盘空间清理前检查 |
| --filter | 按条件过滤 | 查找特定状态的容器 |
| --format | 自定义输出格式 | 提取特定字段信息 |
| -n | 显示最近创建的n个容器 | 查看最新部署情况 |
| -l / --latest | 显示最近创建的容器 | 快速查看最新容器 |
2.3 完整命令示例
查看所有容器(包括已停止的):
bash复制sudo docker ps -a
查看运行中的容器及其占用空间:
bash复制sudo docker ps -s
查找所有退出的容器:
bash复制sudo docker ps -a --filter "status=exited"
3. 输出结果深度解读
执行docker ps -a后,典型输出如下:
code复制
