forked from CivMC/CivDocker
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
138 lines (122 loc) · 3.12 KB
/
docker-compose.yml
File metadata and controls
138 lines (122 loc) · 3.12 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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
version: '3.9'
services:
waterfall:
build: waterfall
restart: unless-stopped
tty: true
stdin_open: true
depends_on:
mariadb:
condition: service_healthy
postgres:
condition: service_healthy
rabbitmq:
condition: service_healthy
ports:
- "25565:25577"
paper:
build: paper
restart: unless-stopped
tty: true
stdin_open: true
depends_on:
mariadb:
condition: service_healthy
postgres:
condition: service_healthy
ports:
- "8123:8123"
environment:
INIT_MEMORY: 1G
MAX_MEMORY: 5G
CIV_SERVER_NAME: local
CIV_WORLD_GENERATOR: Terra:DEFAULT
CIV_MYSQL_HOST: mariadb
CIV_MYSQL_USERNAME: mariadb
CIV_MYSQL_PASSWORD: mariadb
CIV_POSTGRES_HOST: postgres
CIV_POSTGRES_USERNAME: postgres
CIV_POSTGRES_PASSWORD: postgres
CIV_RABBITMQ_HOST: rabbitmq
CIV_RABBITMQ_USERNAME: rabbitmq
CIV_RABBITMQ_PASSWORD: rabbitmq
volumes:
- ./local/paper:/data
queue:
build: queue
restart: unless-stopped
tty: true
stdin_open: true
environment:
INIT_MEMORY: 1G
MAX_MEMORY: 5G
CIV_SERVER_NAME: local-queue
CIV_POSTGRES_HOST: postgres
CIV_POSTGRES_USERNAME: postgres
CIV_POSTGRES_PASSWORD: postgres
volumes:
- ./local/queue:/data
mariadb:
image: mariadb:10.7.1
restart: unless-stopped
command: --max-connections 500
healthcheck:
test: [ "CMD-SHELL", 'mysqladmin ping --user "$$MYSQL_USER" --password="$$MYSQL_PASSWORD"' ]
timeout: 20s
retries: 10
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: mariadb
MYSQL_USER: mariadb
MYSQL_PASSWORD: mariadb
MYSQL_DATABASE: mariadb
volumes:
- ./provisioning/mariadb/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
- ./local/mariadb:/var/lib/mysql
postgres:
image: timescale/timescaledb:latest-pg14
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", 'pg_isready -U "$$POSTGRES_USER"']
interval: 10s
timeout: 5s
retries: 5
ports:
- "5432:5432"
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: postgres
volumes:
- ./provisioning/postgres/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
- ./local/postgres:/var/lib/postgresql/data
rabbitmq:
image: rabbitmq:3.9.16-management
restart: unless-stopped
healthcheck:
test: ["CMD", "rabbitmq-diagnostics", "ping"]
interval: 60s
timeout: 10s
retries: 5
ports:
- "5672:5672"
environment:
RABBITMQ_DEFAULT_USER: rabbitmq
RABBITMQ_DEFAULT_PASS: rabbitmq
grafana:
image: grafana/grafana-oss:latest
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
profiles:
- extra
ports:
- "3000:3000"
environment:
CIV_INFLUX_HOST: http://influx:8086
CIV_INFLUX_ORG: CivMC
CIV_INFLUX_TOKEN: admintoken
volumes:
- ./grafana/provisioning:/etc/grafana/provisioning