Docker运维篇

要查看 Docker 容器的资源占用排行,可以使用 docker stats 命令结合一些额外的选项和工具来实现。以下是一些具体的方法:

方法 1:使用 docker stats 命令

docker stats 命令可以实时显示所有容器的资源使用情况,包括 CPU、内存、网络 I/O 和磁盘 I/O。你可以通过以下命令查看资源占用情况:

bash 复制代码
docker stats

默认情况下,docker stats 会每隔 1 秒钟刷新一次输出内容,直到你按下 Ctrl + C

方法 2:按资源占用排序

如果你希望按资源占用排序,可以使用 --no-stream 选项并结合 sort 命令。以下是一些常用的排序命令:

按内存使用量排序
bash 复制代码
docker stats --no-stream --format "table {{.Name}}\t{{.MemUsage}}" | sort -k 2 -h
按 CPU 使用率排序
bash 复制代码
docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}" | sort -k 2 -h

方法 3:使用 --format 自定义输出

你可以通过 --format 选项自定义输出内容,例如只显示容器名称和内存使用情况:

bash 复制代码
docker stats --no-stream --format "table {{.Name}}\t{{.MemUsage}}"

方法 4:使用第三方工具

如果你需要更详细的监控和可视化,可以使用第三方工具,如 PortainercAdvisor

使用 Portainer

Portainer 是一个开源的 Docker 管理工具,提供了一个 Web 界面来监控和管理 Docker 容器。你可以通过以下命令安装 Portainer:

bash 复制代码
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

访问 http://<your-server-ip>:9443http://<your-server-ip>:9000,你可以看到容器的资源使用情况。

使用 cAdvisor

cAdvisor 是一个开源的容器资源分析工具,可以监控容器内的资源使用情况并生成报告。你可以通过以下命令安装 cAdvisor:

bash 复制代码
docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:ro \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --publish=8080:8080 \
  --detach=true \
  --name=cadvisor \
  google/cadvisor:latest

访问 http://<your-server-ip>:8080,你可以看到容器的资源使用情况。

示例命令

以下是一个完整的示例命令,按内存使用量排序并显示容器名称和内存使用情况:

bash 复制代码
docker stats --no-stream --format "table {{.Name}}\t{{.MemUsage}}" | sort -k 2 -h

输出示例

运行上述命令后,你将看到类似以下的输出:

复制代码
NAME                MEM USAGE
ybjgapi             128MiB / 1.942GiB
ldxc                64MiB / 1.942GiB
scmapi              32MiB / 1.942GiB
...

总结

通过上述方法,你可以轻松查看 Docker 容器的资源占用情况,并按需排序。如果你需要更高级的监控和可视化,可以考虑使用 Portainer 或 cAdvisor 等第三方工具。希望这些方法能帮助你更好地管理你的 Docker 容器!

相关推荐
XIAOHEZIcode18 小时前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220701 天前
如何搭建本地yum源(上)
运维
武子康1 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
大树884 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠4 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质4 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工4 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
酣大智4 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_4 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化