-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.telemetry.yml
More file actions
86 lines (78 loc) · 2.18 KB
/
docker-compose.telemetry.yml
File metadata and controls
86 lines (78 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
name: telemetry
volumes:
production_prometheus_data:
production_loki_data:
production_tempo_data:
production_grafana_data:
networks:
democrasite_metrics:
external: true
democrasite_frontend:
external: true
x-default-logging: &logging
driver: "json-file"
options:
max-size: "5m"
max-file: "2"
tag: "{{.Name}}|{{.ImageName}}|{{.ID}}"
services:
prometheus:
image: prom/prometheus:v3.9.1
command:
- --web.enable-otlp-receiver
volumes:
- ./compose/production/telemetry/prometheus.yml:/prometheus/prometheus.yml
- production_prometheus_data:/prometheus
networks:
- democrasite_metrics
logging: *logging
loki:
image: grafana/loki:3.6.4
volumes:
- ./compose/production/telemetry/loki.yaml:/etc/loki/loki.yaml
- production_loki_data:/loki
networks:
- democrasite_metrics
command: ["--log.level=warn", "--config.file=/etc/loki/loki.yaml"]
logging: *logging
tempo:
image: grafana/tempo:2.10.0
command: -config.file=/etc/tempo/tempo.yaml
volumes:
- ./compose/production/telemetry/tempo.yaml:/etc/tempo/tempo.yaml
- production_tempo_data:/var/tempo
networks:
- democrasite_metrics
logging: *logging
otelcol:
image: otel/opentelemetry-collector-contrib:0.144.0
user: "0" # to open log files
group_add:
- "999" # to access docker socket
volumes:
- ./compose/production/telemetry/otelcol-config.yaml:/etc/otelcol-contrib/config.yaml
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- /var/log/build.log:/var/log/build.log
- /var/run/docker.sock:/var/run/docker.sock
- /:/hostfs:ro
networks:
- democrasite_metrics
depends_on:
- loki
- tempo
logging: *logging
grafana:
image: grafana/grafana:12.3.2
volumes:
- ./compose/production/telemetry/datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml
- production_grafana_data:/var/lib/grafana
env_file:
- ./.envs/.production/.grafana
networks:
- democrasite_metrics
- democrasite_frontend
depends_on:
- loki
- tempo
- prometheus
logging: *logging