-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
91 lines (83 loc) · 1.99 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
x-app: &default-rq
image: lorax:latest
depends_on:
redis:
condition: service_healthy
# in case "lorax" image is rebuilt
flask:
condition: service_started
restart: always
environment:
GUNICORN_CMD_ARGS: "--workers=2"
# number of threads for raxml & hmmalign
OMP_NUM_THREADS: 1
volumes:
- data:/usr/local/var/data
services:
flask:
build: .
image: lorax:latest
healthcheck:
test: "curl -q http://localhost:8000/status"
restart: always
ports:
- "${PORT}:8000"
depends_on:
redis:
condition: service_healthy
volumes:
- data:/usr/local/var/data
load:
image: lorax:latest
depends_on:
flask:
condition: service_healthy
environment:
LORAX_CURL_URL: flask:8000
working_dir: /usr/local/var/data
command: /usr/src/app/lorax/test/install_families.sh
profiles:
- load
volumes:
- data:/usr/local/var/data
redis:
image: redis:6.2.4-alpine3.14
restart: always
healthcheck:
test: "redis-cli ping"
rq_worker_alignment:
<<: *default-rq
command: rq worker --url redis://redis:6379 alignment
rq_worker_treebuilding:
<<: *default-rq
command: rq worker --url redis://redis:6379 treebuilding
# https://github.com/Parallels/rq-dashboard#installing-with-docker
rq_dashboard:
image: eoranged/rq-dashboard:v0.6.3
environment:
RQ_DASHBOARD_REDIS_URL: redis://redis:6379
ports:
- "9181:9181"
depends_on:
redis:
condition: service_healthy
profiles:
- rq_dashboard
test:
image: lorax:latest
# testing
environment:
LORAX_CURL_URL: flask:8000
depends_on:
flask:
condition: service_started
rq_worker_alignment:
condition: service_started
rq_worker_treebuilding:
condition: service_started
working_dir: /usr/src/app/lorax/test
command: ./test_targets.sh
profiles:
- test
volumes:
data: