-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdocker-compose.yml
100 lines (93 loc) · 2.47 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
version: "3.8"
services:
loki:
container_name: ptx_loki
image: grafana/loki:master
command: -config.file=/etc/loki/local-config.yaml
networks:
- grafana-loki
- promtail-loki
promtail:
container_name: ptx_promtail
depends_on:
- loki
image: grafana/promtail:master
volumes:
- /var/log:/var/log
command: -config.file=/etc/promtail/config.yml
networks:
- promtail-loki
cadvisor:
container_name: ptx_cadvisor
image: google/cadvisor:v0.33.0
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- /dev/disk/:/dev/disk:ro
networks:
- monitoring-prometheus
prometheus:
container_name: ptx_prometheus
build:
context: .
dockerfile: docker/prometheus/Dockerfile
ports:
- "${PROM_PORT}:9090"
env_file:
- .env
volumes:
- ./prometheus:/etc/prometheus
networks:
- world
- monitoring-prometheus
- grafana-prometheus
alert-manager:
restart: always
container_name: ptx_alert_manager
depends_on:
- prometheus
ports:
- "${ALERT_PORT}:9093"
env_file:
- .env
image: prom/alertmanager
expose:
- "9093"
volumes:
- ./alertmanager/config.yml:/etc/alertmanager/rules.yml
networks:
- world
- monitoring-prometheus
- grafana-prometheus
grafana:
container_name: ptx_grafana
depends_on:
- loki
image: grafana/grafana:6.0.0
ports:
- "${GRAFANA_PORT}:3000"
env_file:
- .env
environment:
GF_SECURITY_ADMIN_USER: ${GRAFANA_ADMIN_USER}
GF_SECURITY_ADMIN_PASSWORD: ${GRAFANA_ADMIN_PWD}
GF_PATHS_PROVISIONING: '/app.cfg/provisioning'
volumes:
- ./grafana:/app.cfg
networks:
- world
- grafana-loki
- grafana-prometheus
networks:
world:
promtail-loki:
internal: true
grafana-loki:
internal: true
grafana-prometheus:
internal: true
monitoring-prometheus:
name: monitoring-prometheus
internal: true