-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
108 lines (107 loc) · 2.77 KB
/
docker-compose.yml
File metadata and controls
108 lines (107 loc) · 2.77 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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
version: '3'
services:
nodejs-app:
build: ./app
container_name: nodejs-app
restart: unless-stopped
volumes:
- ./app/logs:/usr/src/app/logs
ports:
- "3333:3333"
depends_on:
- alloy
node_exporter:
image: prom/node-exporter:latest
container_name: node-exporter
ports:
- "9100:9100"
command:
- "--path.procfs=/host/proc"
- "--path.sysfs=/host/sys"
- "--path.rootfs=/host"
loki:
image: grafana/loki:${GRAFANA_LOKI_VERSION:-3.5.0}
ports:
- "3100:3100"
volumes:
- ./loki/loki-config.yaml:/etc/loki/local-config.yaml
command: -config.file=/etc/loki/local-config.yaml
mimir:
image: grafana/mimir:latest
container_name: mimir
command:
- "-target=all"
- "--config.file=/etc/mimir-config.yaml"
ports:
- '9009:9009'
volumes:
- ./mimir/mimir-config.yaml:/etc/mimir-config.yaml
tempo:
image: grafana/tempo:latest
command: [ "-config.file=/etc/tempo-config.yaml" ]
volumes:
- ./tempo/tempo-config.yaml:/etc/tempo-config.yaml
- ./tempo-data:/var/tempo
ports:
- "3200" # tempo
- "4317" # otlp grpc
# # prometheus:
# image: prom/prometheus:${PROMETHEUS_VERSION:-v3.3.0}
# command:
# - --web.enable-remote-write-receiver
# - --config.file=/etc/prometheus/prometheus.yml
# ports:
# - "9090:9090"
grafana:
image: grafana/grafana:${GRAFANA_VERSION:-11.6.1}
environment:
- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_AUTH_BASIC_ENABLED=false
ports:
- 3000:3000/tcp
entrypoint:
- sh
- -euc
- |
mkdir -p /etc/grafana/provisioning/datasources
cat <<EOF > /etc/grafana/provisioning/datasources/ds.yaml
apiVersion: 1
datasources:
- name: Loki
type: loki
access: proxy
orgId: 1
url: http://loki:3100
basicAuth: false
isDefault: false
version: 1
editable: false
- name: Mimir
type: prometheus
orgId: 1
url: http://mimir:9009/prometheus
basicAuth: false
isDefault: true
version: 1
editable: false
- name: Tempo
type: tempo
orgId: 1
url: http://tempo:3200
basicAuth: false
isDefault: false
version: 1
editable: false
EOF
/run.sh
alloy:
image: grafana/alloy:${GRAFANA_ALLOY_VERSION:-v1.8.2}
ports:
- 12345:12345
- 4317:4317
- 4318:4318
volumes:
- ./alloy/config.alloy:/etc/alloy/config.alloy
- ./app/logs:/temp/logs
command: run --server.http.listen-addr=0.0.0.0:12345 --storage.path=/var/lib/alloy/data /etc/alloy/config.alloy