2025-12-12 15:28:18 +01:00

74 lines
1.9 KiB
YAML

# docker-compose-metrics.yml
# Lancer en premier : docker compose -f docker-compose-metrics.yml up -d
services:
prometheus-config-init:
image: busybox:latest
container_name: prometheus-config-init
volumes:
- prometheus-config-vol:/config
command:
- /bin/sh
- -c
- |
cat > /config/prometheus.yml <<'EOF'
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'observabilite'
static_configs:
- targets: ['172.17.0.1:9100']
- job_name: 'scaphandre'
static_configs:
- targets: ['192.168.56.61:8080']
fallback_scrape_protocol: "PrometheusText1.0.0"
- job_name: 'apache_vmservices'
static_configs:
- targets: ['apache_exporter_service:9117']
- job_name: 'vms'
static_configs:
- targets: ['192.168.56.18:9100']
EOF
echo "Prometheus config created"
restart: "no"
networks:
- observability
prometheus:
image: prom/prometheus:latest
container_name: prometheus-observability
volumes:
- prometheus-config-vol:/etc/prometheus:ro
command:
- '--config.file=/etc/prometheus/prometheus.yml'
ports:
- "9090:9090"
networks:
- observability
depends_on:
- prometheus-config-init
node_exporter:
image: prom/node-exporter:latest
container_name: node-exporter
restart: unless-stopped
pid: "host"
network_mode: "host"
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- '--path.procfs=/host/proc'
- '--path.sysfs=/host/sys'
- '--collector.filesystem.ignored-mount-points="^/(sys|proc|dev|host|etc)($$|/)"'
volumes:
prometheus-config-vol:
networks:
observability:
driver: bridge