-
Notifications
You must be signed in to change notification settings - Fork 566
/
docker-compose.yaml
129 lines (117 loc) · 2.5 KB
/
docker-compose.yaml
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
version: "3.9"
x-base-service: &base
image: node:18-slim
entrypoint: sh
working_dir: /app
volumes:
- .:/app
- /app/node_modules
services:
redis:
image: redis:6
ports:
- 6379:6379
db:
image: postgres:13
restart: always
environment:
POSTGRES_USER: duelyst
POSTGRES_PASSWORD: duelyst
POSTGRES_DB: duelyst
ports:
- 5432:5432
volumes:
- ./.pgdata:/var/lib/postgresql/data
adminer:
image: adminer
profiles:
- donotstart
restart: always
ports:
- 8080:8080
environment:
POSTGRES_CONNECTION: "pg://duelyst:duelyst@db/duelyst"
depends_on:
- db
api:
<<: *base
ports:
- 3000:3000
environment:
REDIS_HOST: redis
POSTGRES_CONNECTION: "pg://duelyst:duelyst@db/duelyst"
FIREBASE_URL: ${FIREBASE_URL}
FIREBASE_LEGACY_TOKEN: ${FIREBASE_LEGACY_TOKEN}
command: docker/start.sh api
depends_on:
- db
- redis
game:
<<: *base
ports:
- 8001:8001
environment:
REDIS_HOST: redis
FIREBASE_URL: ${FIREBASE_URL}
FIREBASE_LEGACY_TOKEN: ${FIREBASE_LEGACY_TOKEN}
command: docker/start.sh game
depends_on:
- redis
sp:
<<: *base
ports:
- 8000:8000
environment:
REDIS_HOST: redis
FIREBASE_URL: ${FIREBASE_URL}
FIREBASE_LEGACY_TOKEN: ${FIREBASE_LEGACY_TOKEN}
command: docker/start.sh sp
depends_on:
- redis
worker:
<<: *base
environment:
REDIS_HOST: redis
POSTGRES_CONNECTION: "pg://duelyst:duelyst@db/duelyst"
FIREBASE_URL: ${FIREBASE_URL}
FIREBASE_LEGACY_TOKEN: ${FIREBASE_LEGACY_TOKEN}
command: docker/start.sh worker
depends_on:
- db
- redis
worker-ui:
<<: *base
profiles:
- donotstart
ports:
- 4000:4000
command: docker/start.sh worker-ui
depends_on:
- worker
migrate:
<<: *base
profiles:
- donotstart
environment:
NODE_ENV: development
POSTGRES_CONNECTION: "pg://duelyst:duelyst@db/duelyst"
depends_on:
- db
command: docker/start.sh migrate:latest
test-unit:
<<: *base
profiles:
- donotstart
command: docker/start.sh test:unit
test-integration:
<<: *base
profiles:
- donotstart
environment:
REDIS_HOST: redis
POSTGRES_CONNECTION: "pg://duelyst:duelyst@db/duelyst"
FIREBASE_URL: ${FIREBASE_URL}
command: docker/start.sh test:integration
depends_on:
- db
- redis