Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
120 lines (111 loc) · 2.86 KB
/
Copy pathdocker-compose.yml
File metadata and controls
120 lines (111 loc) · 2.86 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
# Monitoring and Alerting system
version: '3'
volumes:
prometheus_data: {}
grafana_data: {}
services:
traefik:
image: traefik:1.7-alpine
command: --api --docker --acme.storage=/etc/traefik/acme.json
container_name: traefik
labels:
- "traefik.frontend.rule=Host:proxy.kebo.io"
- "traefik.enable=true"
- "traefik.port=8080"
depends_on:
- prometheus
- alertmanager
- grafana
volumes:
- ./files/traefik/:/etc/traefik/
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 80:80
- 443:443
expose:
- "8080"
restart: always
prometheus:
image: prom/prometheus
container_name: prometheus
labels:
- "traefik.frontend.rule=Host:stats.kebo.io"
- "traefik.enable=true"
- "traefik.port=9090"
depends_on:
- blackbox
- node
volumes:
- prometheus_data:/data
- ./confd/configs/prometheus/:/etc/prometheus/
- ./files/prometheus/recording.rules:/etc/prometheus/recording.rules
- ./files/prometheus/alerting.rules:/etc/prometheus/alerting.rules
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
ports:
- 9090:9090
restart: always
alertmanager:
image: prom/alertmanager
container_name: alertmanager
labels:
- "traefik.frontend.rule=Host:alerts.kebo.io"
- "traefik.enable=true"
- "traefik.port=9093"
volumes:
- ./confd/configs/alertmanager/:/etc/alertmanager/
command:
- '--config.file=/etc/alertmanager/alertmanager.yml'
- '--storage.path=/alertmanager'
ports:
- 9093:9093
restart: always
blackbox:
image: prom/blackbox-exporter
container_name: blackbox
labels:
- "traefik.enable=true"
volumes:
- ./files/blackbox/blackbox.yml:/etc/blackbox_exporter/config.yml
ports:
- 9115:9115
restart: always
node:
image: prom/node-exporter
container_name: node
labels:
- "traefik.enable=true"
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- '--path.procfs=/host/proc'
- '--path.sysfs=/host/sys'
- --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)($$|/)"
ports:
- 9100:9100
restart: always
grafana:
image: grafana/grafana
container_name: grafana
labels:
- "traefik.enable=true"
labels:
- "traefik.frontend.rule=Host:graphs.kebo.io"
- "traefik.enable=true"
- "traefik.port=3000"
depends_on:
- prometheus
volumes:
- grafana_data:/var/lib/grafana
- ./files/grafana/grafana.ini:/etc/grafana/grafana.ini
ports:
- 3000:3000
restart: always
networks:
default:
external:
name: ${NETWORK}