-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
113 lines (104 loc) · 3.08 KB
/
docker-compose.yml
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
109
110
111
112
113
version: "3.7"
volumes:
celestia_prometheus_data: {}
celestia_grafana_data: {}
celestia_alertmanager_data: {}
celestia_loki_data: {}
services:
prometheus:
image: prom/prometheus:v2.47.0
container_name: celestia_prometheus
volumes:
- ./prometheus/:/etc/prometheus/:ro
- celestia_prometheus_data:/prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--web.enable-lifecycle'
- '--log.level=warn'
- '--storage.tsdb.retention.time=360d'
ports:
- "9090:9090"
restart: always
# default login credentials: admin/admin
grafana:
image: grafana/grafana:10.1.4
env_file: ./grafana/grafana.conf
container_name: celestia_grafana
volumes:
- celestia_grafana_data:/var/lib/grafana
- ./grafana/datasource.yml:/etc/grafana/provisioning/datasources/datasource.yml
- ./grafana/dashboards:/etc/grafana/provisioning/dashboards
ports:
- "9999:3000"
restart: always
celestia_da_exporter:
build: .
container_name: celestia_da_exporter
ports:
- "9300:9300"
restart: always
environment:
- FLASK_DEBUG=true
entrypoint: ["/usr/bin/da-exporter", "--node", "${BRIDGE_RPC}", "--token", "${BRIDGE_TOKEN}"]
alertmanager:
image: prom/alertmanager:v0.26.0
container_name: celestia_alertmanager
ports:
- "9093:9093"
volumes:
- ./prometheus/alert_manager:/etc/alertmanager:ro
- celestia_alertmanager_data:/data
command:
- '--config.file=/etc/alertmanager/alertmanager.yml'
- '--storage.path=/data'
- '--log.level=debug'
hostname: 'alert_manager'
restart: always
cadvisor:
image: gcr.io/cadvisor/cadvisor:v0.47.1
container_name: celestia_cadvisor
restart: unless-stopped
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
expose:
- 8080
node_exporter:
image: prom/node-exporter:v1.8.0
container_name: celestia_node_exporter
restart: unless-stopped
command:
- '--path.rootfs=/host'
pid: host
network_mode: host
volumes:
- '/:/host:ro,rslave'
expose:
- "9100"
loki:
container_name: celestia_loki
image: grafana/loki:2.9.1
restart: always
# Since the Loki containers are running as user 10001 and the mounted data volume is owned by root,
# Loki would not have permissions to create the directories.
# Therefore, the init container changes permissions of the mounted directory.
user: root
ports:
- "3100:3100"
volumes:
- celestia_loki_data:/mnt
- ./loki/loki.yaml:/etc/loki/loki.yaml:ro
- ./loki/rules:/etc/loki/rules/fake:ro
command: -config.file=/etc/loki/loki.yaml
promtail:
container_name: celestia_promtail
image: grafana/promtail:2.9.1
restart: always
volumes:
- /var/log:/var/log:ro
- ./loki/promtail.yaml:/etc/promtail/promtail.yaml:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
command: -config.file=/etc/promtail/promtail.yaml