-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yml
104 lines (90 loc) · 2.65 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
version: "3"
services:
# backend
analytic-backend:
image: ghcr.io/aasaam/analytic-backend:latest
depends_on:
- analytic-redis
- analytic-rest-captcha
- analytic-postgres
container_name: analytic-backend
volumes:
- ./cert/ca.pem:/app/api/clickhouse-cert/ca.pem:ro
- ./cert/client-fullchain.pem:/app/api/clickhouse-cert/client-fullchain.pem:ro
- ./cert/client-key.pem:/app/api/clickhouse-cert/client-key.pem:ro
env_file:
- ./.env
extra_hosts:
- "ch1.${ASM_CH_DOMAIN}:${ASM_CH_NODE1_IP}"
- "ch2.${ASM_CH_DOMAIN}:${ASM_CH_NODE2_IP}"
- "ch3.${ASM_CH_DOMAIN}:${ASM_CH_NODE3_IP}"
# databases
analytic-redis:
container_name: analytic-redis
image: redis:6
analytic-rest-captcha:
container_name: analytic-captcha
image: ghcr.io/aasaam/rest-captcha:latest
command: run -return-value
analytic-postgres:
container_name: analytic-postgres
environment:
POSTGRES_DB: ${ASM_POSTGRES_DB:-pg-db}
POSTGRES_USER: ${ASM_POSTGRES_USER:-pg-user}
POSTGRES_PASSWORD: ${ASM_POSTGRES_PASSWORD:-pg-password}
POSTGRES_HOST_AUTH_METHOD: trust
image: postgres:13
volumes:
- postgres:/var/lib/postgresql/data
analytics-web:
image: ghcr.io/aasaam/analytic-web:latest
container_name: analytics-web
hostname: analytics-web
depends_on:
- analytic-backend
- analytic-grafana
ports:
- 0.0.0.0:80:80
- 0.0.0.0:443:443
volumes:
- ./nginx/nginx.conf:/etc/nginx/templates/default.conf.template:ro
- ./public-cert:/cert:ro
env_file:
- ./.env
logging:
driver: "journald"
options:
tag: "container:APP=analytics-clickhouse TYPE=nginx"
###########
# Grafana #
###########
analytic-grafana-redis:
container_name: analytic-grafana-redis
image: redis:6
analytic-grafana-postgres:
container_name: analytic-grafana-postgres
environment:
POSTGRES_DB: ${ASM_POSTGRES_DB:-pg-db}
POSTGRES_USER: ${ASM_POSTGRES_USER:-pg-user}
POSTGRES_PASSWORD: ${ASM_POSTGRES_PASSWORD:-pg-password}
POSTGRES_HOST_AUTH_METHOD: trust
image: postgres:13
volumes:
- grafana-postgres:/var/lib/postgresql/data
analytic-grafana:
container_name: analytic-grafana
image: ghcr.io/aasaam/grafana:latest
depends_on:
- analytic-grafana-redis
- analytic-grafana-postgres
env_file:
- ./.env
extra_hosts:
- "ch1.${ASM_CH_DOMAIN}:${ASM_CH_NODE1_IP}"
- "ch2.${ASM_CH_DOMAIN}:${ASM_CH_NODE2_IP}"
- "ch3.${ASM_CH_DOMAIN}:${ASM_CH_NODE3_IP}"
volumes:
grafana-postgres:
driver: local
postgres:
driver: local