docker stats可实时监控运行中容器资源消耗,默认1秒刷新,支持查看全部或指定容器、非实时快照及格式化输出,停止容器无统计值。

直接运行 docker stats 就能实时看到所有正在运行容器的资源消耗,刷新间隔默认为1秒,按 Ctrl + C 可退出。
基础用法:看全部运行中容器
终端输入:
docker stats
会持续输出以下字段:
- CONTAINER:容器ID(短格式)
- CPU %:当前CPU使用率
- MEM USAGE / LIMIT:已用内存 / 内存上限(若未设limit则显示“-”)
- MEM %:内存使用百分比
- NET I/O:网络收发总流量
- BLOCK I/O:磁盘读写总量
- PIDS:容器内活跃进程数
聚焦单个或多个容器
指定名称或ID,结果更清晰:
- 查一个容器:
docker stats my-app或docker stats a1b2c3d4 - 查多个容器:
docker stats nginx redis db(空格分隔) - 用容器名替代ID显示:
docker stats $(docker ps --format='{{.Names}}')
非实时快照模式
加 --no-stream 只输出一次当前值,适合脚本调用或快速检查:
-
docker stats --no-stream(所有运行中容器) -
docker stats --no-stream my-app(单个容器)
该模式下不自动刷新,输出即终止。
进阶控制选项
提升可读性或适配自动化场景:
-
--all:显示包括已停止的容器(但停止容器无数据) -
--no-trunc:显示完整容器ID和名称,避免截断 -
--format:用Go模板自定义列,例如只看CPU和内存:docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemPerc}}" my-app
注意:stats 命令仅对运行中容器有效;已停止容器不会返回任何统计值。











