首页/云/Docker 容器速查/docker stats 实时资源占用
基础命令50 条

docker stats 实时资源占用

流式查看容器 CPU、内存、网络与磁盘 IO 占用;--no-stream 取单次数值,适合快速判断谁在吃资源。

Docker 容器速查云更新于 2026-10-13

docker stats 是什么

docker stats 展示容器的资源占用:处理器、内存、网络与磁盘读写。默认是流式刷新,数字每秒更新一次,适合盯着看谁在吃资源;加单次采样的选项后只输出一份快照,方便贴进工单或喂给监控脚本。

基本信息

语法docker stats [选项] [CONTAINER...]
常用选项--no-stream 只取一次 --all 含已停止容器 --format 自定义输出
权限要求能访问 Docker 守护进程即可
数据来源读取容器的资源组统计,宿主内核不支持时部分指标会缺失
平台差异Linux 主机数据完整;桌面环境跑在虚拟机里,与宿主任务管理器数字不对应

典型使用场景

  • 定位热点容器:机器变慢时快速找出占用最高的那个实例
  • 容量规划:观察服务的正常水位与峰值,据此设定内存上限
  • 验证限制是否生效:确认容器是否真的用上了配置的处理器与内存配额
  • 发布后观察:新版本上线后对照资源曲线,判断是否引入性能回退
  • 采集快照:定时取单次数值写入监控系统,形成长期趋势

常用示例

常用示例
docker stats                                   # 全量流式刷新
docker stats --no-stream                       # 只输出一次快照
docker stats --no-stream web db                # 只看指定容器
docker stats --all --no-stream                 # 含已停止的容器
docker stats --format 'table {{.Name}} {{.CPUPerc}} {{.MemUsage}}' --no-stream

输出逐列读法

列含义常见读法
容器标识容器 ID 与名称只显示 ID 说明容器没起名字,脚本取值先归一
处理器占用占用的处理器百分比,按单核归一多核机器上超过一百属于正常,接近核数总量说明已跑满
内存用量与上限已用内存与限制值没设上限时上限显示宿主总内存,这类容器会把整机拖下水
内存占比已用内存占限制值的比例长期贴近上限要考虑调大或排查泄漏
网络流量累计接收与发送流量持续单向增长可能是在被刷或被灌数据
磁盘读写累计磁盘读写量读写量异常高时先看是否有大量日志落盘
进程数容器内进程与线程数数量持续上涨往往意味着子进程没被回收

看到异常之后怎么查

  • 处理器高:先进容器看进程排序,确认是应用本身还是被压测流量打满
  • 内存高:确认上限设置是否合理,再看应用内部的对象增长与缓存策略
  • 网络异常:对照连接列表与请求日志,判断是外部流量还是内部重试风暴
  • 磁盘突增:检查日志输出量与临时文件,必要时加日志轮转
  • 与宿主工具对不上:先确认两边是不是同一个内核视角,桌面环境差异属正常
瞬时采样容易错过尖峰。需要可靠结论时用单次模式定时采集,或接入监控系统做长周期统计,别凭一眼的数字下结论。
内存列的上限来自容器的内存限制配置,未配置时就等于宿主内存;想让数字有意义,生产容器应显式声明内存上限。

读数与设限的配合

  • 先观察再设限:拿正常业务水位与高峰数值作为依据,拍脑袋设的数字要么误杀要么形同虚设
  • 设了内存上限就要接受超限被杀的结果,配套做法是提高上限或修复泄漏
  • 处理器配额与实时占用是两回事,配额决定上限,实时数字反映当前压力
  • 容器数量多时逐台观察没有意义,统一接入监控再按异常告警排查
  • 对比同一服务不同版本的数字,能更早发现性能回退与配置漂移

易错点

  • 只看处理器百分比就断定服务有问题,忽略了多核归一的计数方式,容易把正常负载当成异常
  • 磁盘读写统计在部分存储驱动与内核组合下并不完整,判断磁盘热点还要结合占用总览与宿主工具
  • 内存上限没设的容器会把整机内存吃光并引发连锁故障,生产环境务必显式限制
  • 把容器内看到的数字直接当成整机数字,忽略了宿主上还有其他容器与系统进程

数据来源与参考

  • Docker 官方 CLI 参考:docker stats(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌