forked from kclhi/phenoflow
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
76 lines (68 loc) · 1.72 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
version: "3.7"
services:
proxy:
build:
context: ./web/proxy
command: ["./wait-for-it.sh", "--timeout=0", "webapp:3003", "--", "nginx", "-g", "daemon off;"]
depends_on:
- webapp
restart: "no"
entrypoint: ["echo", "Service proxy disabled"]
webapp:
build: web
environment:
DEFAULT_PASSWORD: ${DEFAULT_PASSWORD}
NODE_EXTRA_CA_CERTS: ${NODE_EXTRA_CA_CERTS}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
RSA_PRIVATE_KEY: ${RSA_PRIVATE_KEY}
restart: unless-stopped
ports:
- 3003:3003
volumes:
- pf_uploads:/home/node/app/uploads
secrets:
- rsa-private-key
depends_on:
- mariadb
- generator
mariadb:
build: web/db
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- pf_data:/var/lib/mysql
restart: unless-stopped
migration:
image: phenoflow_webapp:latest
environment:
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
RSA_PRIVATE_KEY: ${RSA_PRIVATE_KEY}
secrets:
- rsa-private-key
command: ["./bin/wait-for-it.sh", "--timeout=0", "phenoflow_mariadb_1:3306", "--", "npm", "run", "migrate"]
depends_on:
- mariadb
- webapp
generator:
build:
context: generator/
restart: unless-stopped
environment:
PORT: 3004
volumes:
pf_uploads:
pf_data:
networks:
default:
external:
name: hi_default # For proxy.
secrets:
rsa-private-key:
file: ${HOST_RSA_PRIVATE_KEY_PATH}${RSA_PRIVATE_KEY}