74 lines
1.9 KiB
YAML
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 |