-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yaml
80 lines (79 loc) · 2.14 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
version: "3"
services:
main_nginx:
image: nginx:1.13.12-alpine
depends_on:
- jona
- elija
- tobito
- files_nginx
volumes:
- ./main-nginx.conf.template:/etc/nginx/conf.d/default.conf.template:ro
- ${LETSENCRYPT_DIR}:/etc/letsencrypt:ro
env_file: ./nginx.env
command: sh -c "envsubst \"`env | awk -F = '{printf \" $$%s\", $$1}'`\" < /etc/nginx/conf.d/default.conf.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"
ports:
- 80:80
- 443:443
neo4j:
image: neo4j:3.4.5
deploy:
replicas: ${NEO4J_REPLICAS}
resources:
limits:
memory: 1.8G
reservations:
memory: 1.5G
environment:
- NEO4J_AUTH=none
volumes:
- ${NEO4J_DIR}:/data
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:6.5.4
deploy:
replicas: ${ELASTICSEARCH_REPLICAS}
resources:
limits:
memory: 1G
reservations:
memory: 600M
environment:
- discovery.type=single-node
- ES_JAVA_OPTS=-Xms600m -Xmx1g
volumes:
- esdata:/usr/share/elasticsearch/data
elija:
image: bp2018hg1/elija:latest
deploy:
replicas: ${ELIJA_REPLICAS}
depends_on:
- neo4j
- elasticsearch
env_file: ./elija.env
volumes:
- ${UPLOADS_DIR}:/src/uploads
- ${WORDKIT_DIR}:/root/nltk_data:ro
- ${ELIJA_GOOGLE_CREDENTIALS_PATH}:/src/google_credentials.json:ro
- ${ELIJA_GOOGLE_CLIENT_IDS_PATH}:/src/clientIds.json:ro
command: ./wait-for.sh neo4j:7687 --timeout=60 -- ./start-gunicorn.sh
jona:
image: bp2018hg1/jona_${ENVIRONMENT}:latest
deploy:
replicas: ${JONA_REPLICAS}
tobito:
image: bp2018hg1/tobito:latest
deploy:
replicas: ${TOBITO_REPLICAS}
env_file: ./tobito.env
volumes:
- ${TOBITO_GOOGLE_CREDENTIALS_PATH}:/usr/src/app/google_credentials.json:ro
files_nginx:
image: nginx:1.13.12-alpine
deploy:
replicas: ${FILES_NGINX_REPLICAS}
volumes:
- ./files-nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ${UPLOADS_DIR}:/files
volumes:
esdata:
driver: local