Ubuntu Docker容器监控实现方法
docker stats:实时显示所有运行中容器的CPU、内存、网络I/O及磁盘I/O使用率,支持通过-c(持续输出)或--no-stream(单次输出)调整模式,也可指定容器ID/名称监控单个容器(如docker stats nginx-container)。此命令无需额外安装,是快速查看容器状态的常用工具。docker inspect:获取容器的详细配置信息(如网络设置、挂载卷、环境变量、启动命令等),通过-f参数可提取特定字段(如docker inspect -f '{{.State.Status}}' nginx-container查看容器状态)。docker logs:查看容器日志输出,支持-f(实时跟踪)、--tail(指定行数,如--tail 100)等参数,帮助排查容器运行中的问题(如docker logs -f web-container)。docker run -d --name=cadvisor --privileged=true -p 8080:8080 google/cadvisor,访问http://<主机IP>:8080即可查看各容器的实时资源占用。wget https://github.com/prometheus/prometheus/releases/download/v2.30.3/prometheus-2.30.3.linux-amd64.tar.gz),编辑prometheus.yml配置文件,添加Docker抓取任务(scrape_configs部分指定cAdvisor的地址,如targets: ['localhost:9323']),启动Prometheus后即可收集指标。sudo apt install grafana并启动服务),登录Web界面(默认http://<主机IP>:3000),添加Prometheus作为数据源,再导入Docker监控模板(如Grafana官方的“Docker Monitoring”模板,ID:193),即可生成包含CPU、内存、网络等指标的可视化图表。dd-agent),即可自动发现并监控Docker容器,支持自定义告警规则(如CPU使用率超过80%时发送邮件/Slack通知)。docker logs输出的日志),存储到Elasticsearch中,再通过Kibana创建仪表板,分析日志中的错误、性能瓶颈等信息(如查看Nginx容器的访问日志,统计请求响应时间)。