160 lines
4.2 KiB
YAML
160 lines
4.2 KiB
YAML
version: "3"
|
|
|
|
services:
|
|
tempo:
|
|
image: grafana/tempo:3.0.3
|
|
command:
|
|
- -config.file=/etc/tempo/tempo.yml
|
|
configs:
|
|
- source: tempo_config
|
|
target: /etc/tempo/tempo.yml
|
|
volumes:
|
|
- tempodata:/var/tempo
|
|
networks:
|
|
- prometheus_network
|
|
- wireguard_network
|
|
|
|
perses:
|
|
image: persesdev/perses:latest
|
|
volumes:
|
|
- persesdata:/perses
|
|
networks:
|
|
- prometheus_network
|
|
- wireguard_network
|
|
|
|
blackbox_exporter:
|
|
image: prom/blackbox-exporter:v0.29.1
|
|
configs:
|
|
- source: blackbox_config
|
|
target: /etc/blackbox_exporter/config.yml
|
|
networks:
|
|
- prometheus_network
|
|
|
|
alertmanager:
|
|
image: prom/alertmanager:v0.34.1
|
|
configs:
|
|
- source: alertmanager_config
|
|
target: /etc/alertmanager/alertmanager.yml
|
|
volumes:
|
|
- alertmanagerdata:/alertmanager
|
|
networks:
|
|
- prometheus_network
|
|
|
|
ntfy:
|
|
image: binwiederhier/ntfy
|
|
command:
|
|
- serve
|
|
environment:
|
|
TZ: Europe/Paris
|
|
volumes:
|
|
- ntfydata:/var/lib/ntfy
|
|
networks:
|
|
- prometheus_network
|
|
- reverse_network
|
|
|
|
docker-proxy-otel:
|
|
image: tecnativa/docker-socket-proxy:v0.5.0
|
|
environment:
|
|
CONTAINERS: 1
|
|
INFO: 1
|
|
VERSION: 1
|
|
PING: 1
|
|
# docker_stats écoute /events pour suivre les conteneurs (sinon 403)
|
|
EVENTS: 1
|
|
POST: 0
|
|
EXEC: 0
|
|
IMAGES: 0
|
|
VOLUMES: 0
|
|
NETWORKS: 0
|
|
SECRETS: 0
|
|
CONFIGS: 0
|
|
SWARM: 0
|
|
SERVICES: 0
|
|
TASKS: 0
|
|
NODES: 0
|
|
SYSTEM: 0
|
|
PLUGINS: 0
|
|
SESSION: 0
|
|
AUTH: 0
|
|
BUILD: 0
|
|
COMMIT: 0
|
|
DISTRIBUTION: 0
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
networks:
|
|
- prometheus_network
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 64M
|
|
|
|
otel-collector:
|
|
image: otel/opentelemetry-collector-contrib:0.164.0
|
|
configs:
|
|
- source: otel_collector_config
|
|
target: /etc/otelcol-contrib/config.yaml
|
|
volumes:
|
|
- /:/hostfs:ro
|
|
- /proc:/hostfs/proc:ro
|
|
- /sys:/hostfs/sys:ro
|
|
- /dev:/hostfs/dev:ro
|
|
- /run:/hostfs/run:ro
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 768M
|
|
networks:
|
|
- prometheus_network
|
|
|
|
prometheus:
|
|
image: prom/prometheus:v3.15.1
|
|
command:
|
|
- --config.file=/etc/prometheus/prometheus.yml
|
|
- --storage.tsdb.path=/prometheus
|
|
- --web.enable-remote-write-receiver
|
|
configs:
|
|
- source: prometheus_config
|
|
target: /etc/prometheus/prometheus.yml
|
|
- source: prometheus_rules_config
|
|
target: /etc/prometheus/alert.rules.yml
|
|
volumes:
|
|
- prometheusdata:/prometheus
|
|
networks:
|
|
- prometheus_network
|
|
- wireguard_network
|
|
|
|
configs:
|
|
prometheus_config:
|
|
name: prometheus_config_${DATETIME}
|
|
file: ./prometheus/prometheus.yml
|
|
blackbox_config:
|
|
name: blackbox_config_${DATETIME}
|
|
file: ./blackbox/blackbox.yml
|
|
alertmanager_config:
|
|
name: alertmanager_config_${DATETIME}
|
|
file: ./prometheus/alertmanager/alertmanager.yml
|
|
prometheus_rules_config:
|
|
name: prometheus_rules_config_${DATETIME}
|
|
file: ./prometheus/alert.rules.yml
|
|
otel_collector_config:
|
|
name: otel_collector_config_${DATETIME}
|
|
file: ./otel-collector/config.yaml
|
|
tempo_config:
|
|
name: tempo_config_${DATETIME}
|
|
file: ./tempo/tempo.yml
|
|
|
|
volumes:
|
|
persesdata:
|
|
prometheusdata:
|
|
ntfydata:
|
|
alertmanagerdata:
|
|
tempodata:
|
|
|
|
networks:
|
|
reverse_network:
|
|
external: true
|
|
wireguard_network:
|
|
external: true
|
|
prometheus_network:
|
|
external: true
|