forked from oijkn/Docker-Raspberry-PI-Monitoring
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
122 lines (114 loc) · 3.2 KB
/
docker-compose.yml
File metadata and controls
122 lines (114 loc) · 3.2 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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
version: "3"
name: monitoring
services:
grafana:
container_name: Grafana
image: grafana/grafana:9.5.1
hostname: grafana
restart: unless-stopped
user: "472"
networks:
- monitoring
ports:
- "3000:3000"
env_file:
- ./grafana/.env
volumes:
# /!\ To be modified depending on your needs /!\
- monitoring_Grafana:/var/lib/grafana
- ./grafana/provisioning:/etc/grafana/provisioning
depends_on:
- prometheus
cadvisor:
container_name: CAdvisor
image: gcr.io/cadvisor/cadvisor:v0.47.1
hostname: cadvisor
restart: unless-stopped
privileged: true
command:
- "--docker_only=true"
- "--housekeeping_interval=30s"
- "--disable_metrics=advtcp,app,cpuLoad,cpu_topology,cpuset,disk,hugetlb,memory_numa,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp"
networks:
- monitoring
expose:
- 8080
devices:
- /dev/kmsg
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- /dev/disk/:/dev/disk:ro
- /etc/machine-id:/etc/machine-id:ro
node-exporter:
container_name: Node-exporter
image: prom/node-exporter-linux-arm64:v1.5.0
hostname: exporter
restart: unless-stopped
networks:
- monitoring
expose:
- 9100
command:
- --path.procfs=/host/proc
- --path.sysfs=/host/sys
- --path.rootfs=/host
- --collector.filesystem.ignored-mount-points
- ^/(sys|proc|dev|host|etc|rootfs/var/lib/docker/containers|rootfs/var/lib/docker/overlay2|rootfs/run/docker/netns|rootfs/var/lib/docker/aufs)($$|/)
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
- /:/host:ro,rslave
prometheus:
container_name: Prometheus
image: prom/prometheus-linux-arm64:v2.43.1
hostname: prometheus
restart: unless-stopped
user: "nobody"
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--storage.tsdb.retention.time=30d'
networks:
- monitoring
expose:
- 9090
volumes:
# /!\ To be modified depending on your needs /!\
- monitoring_Prometheus:/prometheus
- ./prometheus:/etc/prometheus/
depends_on:
- cadvisor
- node-exporter
links:
- cadvisor:cadvisor
- node-exporter:node-exporter
alertmanager:
container_name: Alertmanager
image: prom/alertmanager:v0.25.0
hostname: alertmanager
restart: unless-stopped
command:
- '--config.file=/etc/alertmanager/alertmanager.yml'
- '--storage.path=/alertmanager'
- '--web.external-url=http://localhost:9093/'
networks:
- monitoring
expose:
- 9093
volumes:
- monitoring_Alertmanager:/alertmanager
- ./alertmanager/alertmanager.yml:/etc/alertmanager/alertmanager.yml
networks:
monitoring:
driver: bridge
volumes:
monitoring_Grafana:
external: true
monitoring_Prometheus:
external: true
monitoring_Alertmanager:
external: true