ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Prometheus 监控docker

2026/9/26 2:12:37 拓冰建站 浏览量
Prometheus 监控docker

查看docker运行状态

docker stats

启动docker cadvisor

  • 直接运行docker
docker run -d \--volume=/:/rootfs:ro \--volume=/var/run:/var/run:rw \--volume=/sys:/sys:ro \--volume=/var/lib/docker/:/var/lib/docker:ro \--publish=8080:8080 \--name=cadvisor \gcr.io/cadvisor/cadvisor:v0.44.0
  • docker-compose.yml方式
mkdir /data/cadvisor
cat >docker-compose.yml << 'EOF'
version: '3.3'
networks:monitoring:driver: bridgeservices:cadvisor:image: gcr.io/cadvisor/cadvisor:v0.44.0
#   image: google/cadvisor:latestcontainer_name: cadvisorrestart: alwaysvolumes:- /etc/localtime:/etc/localtime:ro- /:/rootfs:ro- /var/run:/var/run:rw- /sys:/sys:ro- /var/lib/docker/:/var/lib/docker:ronetworks:- monitoringports:- 8080:8080
EOF

运行

docker-compose up -d

check

通过访问 http://10.19.1.220:8080可以查看,当前主机上容器的运行状态,
采集样本 http://10.19.1.220:8080/metrics)

 更新 prometheus.yml配置

- job_name: 'cadvisor'scrape_interval: 15sstatic_configs:- targets: ['cadvisor:8080']labels:instance: Prometheus服务器
#增加新的cadvisor配置- targets: ['10.19.1.220:8080']labels:instance: cadvisor-220服务器 

docker触发器

cat >prometheus/rules/docker.yml << 'EOF'
groups:
- name: DockerContainersrules:- alert: ContaonerKilledexpr: time() -Container_last_seen > 60for: 0mlabels:severiry: warningannotations:summary: "Docker容器被杀死,容器: {{ $labels.instance }}"description: "{{ $value }} 容器消失了"
EOF

热加载

docker exec -it prometheus promtool check config /etc/prometheus/prometheus.yml
curl -X POST http://localhost:9090/-/reload

添加dashboard


11600