f4191f82f5
Co-authored-by: multica-agent <github@multica.ai>
93 lines
2.5 KiB
YAML
93 lines
2.5 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
prometheus:
|
|
image: m.daocloud.io/docker.io/prom/prometheus:v2.52.0
|
|
container_name: prometheus
|
|
ports:
|
|
- "9090:9090"
|
|
volumes:
|
|
- ./config/prometheus.yml:/etc/prometheus/prometheus.yml
|
|
- ./config/agent_alerts.yml:/etc/prometheus/agent_alerts.yml
|
|
- ./data/prometheus:/prometheus
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
command:
|
|
- '--config.file=/etc/prometheus/prometheus.yml'
|
|
- '--storage.tsdb.path=/prometheus'
|
|
- '--web.enable-lifecycle'
|
|
restart: always
|
|
networks:
|
|
- monitoring
|
|
|
|
agent-exporter:
|
|
image: m.daocloud.io/docker.io/python:3.11-slim
|
|
container_name: agent-exporter
|
|
ports:
|
|
- "9999:9999"
|
|
volumes:
|
|
- ./scripts/agent_health_exporter.py:/app/exporter.py:ro
|
|
command: python3 /app/exporter.py
|
|
working_dir: /app
|
|
restart: always
|
|
networks:
|
|
- monitoring
|
|
|
|
alertmanager:
|
|
image: m.daocloud.io/docker.io/prom/alertmanager:v0.27.0
|
|
container_name: alertmanager
|
|
ports:
|
|
- "9093:9093"
|
|
volumes:
|
|
- ./config/alertmanager.yml:/etc/alertmanager/alertmanager.yml
|
|
- ./data/alertmanager:/alertmanager
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
command:
|
|
- '--config.file=/etc/alertmanager/alertmanager.yml'
|
|
- '--storage.path=/alertmanager'
|
|
- '--web.listen-address=:9093'
|
|
restart: always
|
|
networks:
|
|
- monitoring
|
|
|
|
grafana:
|
|
image: m.daocloud.io/docker.io/grafana/grafana:11.0.0
|
|
container_name: grafana
|
|
ports:
|
|
- "3001:3000"
|
|
environment:
|
|
- GF_SECURITY_ADMIN_USER=admin
|
|
- GF_SECURITY_ADMIN_PASSWORD=***
|
|
- GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-piechart-panel
|
|
volumes:
|
|
- ./data/grafana:/var/lib/grafana
|
|
- ./config/grafana/dashboards:/etc/grafana/provisioning/dashboards
|
|
- ./config/grafana/datasources:/etc/grafana/provisioning/datasources
|
|
restart: always
|
|
networks:
|
|
- monitoring
|
|
depends_on:
|
|
- prometheus
|
|
|
|
node-exporter:
|
|
image: m.daocloud.io/docker.io/prom/node-exporter:v1.8.2
|
|
container_name: node-exporter
|
|
ports:
|
|
- "9100:9100"
|
|
volumes:
|
|
- /proc:/host/proc:ro
|
|
- /sys:/host/sys:ro
|
|
- /:/rootfs:ro
|
|
command:
|
|
- '--path.procfs=/host/proc'
|
|
- '--path.sysfs=/host/sys'
|
|
- '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($|/)'
|
|
restart: always
|
|
networks:
|
|
- monitoring
|
|
|
|
networks:
|
|
monitoring:
|
|
driver: bridge
|