57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
services:
|
|
prometheus:
|
|
image: prom/prometheus:v3.14.0
|
|
command:
|
|
- --config.file=/etc/prometheus/prometheus.yaml
|
|
- --storage.tsdb.path=/prometheus
|
|
- --storage.tsdb.retention.time=6h
|
|
ports:
|
|
- "${PROMETHEUS_PORT:-19090}:9090"
|
|
volumes:
|
|
- ./observability/prometheus/prometheus.yaml:/etc/prometheus/prometheus.yaml:ro
|
|
- ./observability/alerts:/etc/prometheus/rules:ro
|
|
- prometheus-data:/prometheus
|
|
|
|
tempo:
|
|
image: grafana/tempo:3.0.3
|
|
command: ["-config.file=/etc/tempo.yaml"]
|
|
volumes:
|
|
- ./observability/tempo/tempo.yaml:/etc/tempo.yaml:ro
|
|
tmpfs:
|
|
- /var/tempo:uid=10001,gid=10001,mode=0755
|
|
|
|
loki:
|
|
image: grafana/loki:3.7.6
|
|
command: ["-config.file=/etc/loki/local-config.yaml"]
|
|
volumes:
|
|
- ./observability/loki/loki.yaml:/etc/loki/local-config.yaml:ro
|
|
tmpfs:
|
|
- /var/loki:uid=10001,gid=10001,mode=0755
|
|
|
|
otel-collector:
|
|
volumes:
|
|
- ./observability/otel-collector/local.yaml:/etc/otelcol-contrib/config.yaml:ro
|
|
depends_on:
|
|
- tempo
|
|
- loki
|
|
|
|
grafana:
|
|
image: grafana/grafana:13.2.0
|
|
environment:
|
|
GF_AUTH_ANONYMOUS_ENABLED: "true"
|
|
GF_AUTH_ANONYMOUS_ORG_ROLE: Admin
|
|
GF_AUTH_DISABLE_LOGIN_FORM: "true"
|
|
ports:
|
|
- "${GRAFANA_PORT:-13000}:3000"
|
|
volumes:
|
|
- ./observability/grafana/provisioning:/etc/grafana/provisioning:ro
|
|
- ./observability/grafana/dashboards:/var/lib/grafana/dashboards:ro
|
|
- grafana-data:/var/lib/grafana
|
|
depends_on:
|
|
- prometheus
|
|
- tempo
|
|
- loki
|
|
|
|
volumes:
|
|
prometheus-data:
|
|
grafana-data:
|