forked from Cytomine-ULiege/Cytomine-community-edition
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
127 lines (115 loc) · 2.93 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
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
version: "3.9"
services:
mongo:
image: $IMAGES_MONGO
container_name: mongo
restart: unless-stopped
volumes:
- ${HOST_PATHS_PROJECT_DATA_PATH}/mongo:/data/db
postgis:
image: $IMAGES_POSTGIS
container_name: postgis
restart: unless-stopped
volumes:
- ${HOST_PATHS_PROJECT_DATA_PATH}/postgis/data:/var/lib/postgresql/data
deploy:
resources:
# limits or reservations ?
reservations:
memory: 8G
elasticsearch:
image: $IMAGES_ELASTICSEARCH
container_name: elasticsearch
restart: unless-stopped
ports:
- "9200:9200"
- "9300:9300"
volumes:
- ${HOST_PATHS_PROJECT_DATA_PATH}/elasticsearch/data:/var/lib/elasticsearch/data
environment:
- discovery.type=single-node
- xpack.security.enabled=false
ulimits:
memlock:
soft: -1
hard: -1
mem_limit: 17179869184
logstash:
container_name: logstash
image: $IMAGES_LOGSTASH
command: logstash -f /usr/share/logstash/config/logstash.conf
volumes:
- ./configs/logstash:/usr/share/logstash/config
- ./configs/logstash:/usr/share/logstash/drivers
environment:
- POSTGRES_USER=$POSTGRES_USER
- POSTGRES_PASS=$POSTGRES_PASS
depends_on:
- elasticsearch
- postgis
rabbitmq:
image: $IMAGES_RABBITMQ
container_name: rabbitmq
restart: unless-stopped
bioformat:
image: $IMAGES_BIOFORMAT
container_name: bioformat
restart: unless-stopped
volumes:
- ${HOST_PATHS_PROJECT_DATA_PATH}/images:$CONTAINER_PATHS_IMAGES
pims-cache:
image: $IMAGES_PIMS_CACHE
container_name: pims-cache
restart: unless-stopped
pims:
image: $IMAGES_PIMS
container_name: pims
restart: unless-stopped
depends_on:
- nginx
- pims-cache
- rabbitmq
volumes:
- ${HOST_PATHS_PROJECT_DATA_PATH}/images:$CONTAINER_PATHS_IMAGES
- ${HOST_PATHS_PROJECT_DATA_PATH}/upload:$CONTAINER_PATHS_UPLOADED
- ${HOST_PATHS_DATASET_PATH}/dataset:$CONTAINER_PATHS_DATASET
deploy:
resources:
# limits or reservations ?
reservations:
memory: 4G
core:
image: $IMAGES_CORE
container_name: core
restart: unless-stopped
depends_on:
- nginx
- postgis
- mongo
- rabbitmq
volumes:
- /etc/localtime:/etc/localtime
web_ui:
image: $IMAGES_WEB_UI
container_name: web_ui
restart: unless-stopped
volumes:
- /etc/localtime:/etc/localtime
nginx:
image: $IMAGES_NGINX
container_name: nginx
restart: unless-stopped
depends_on:
- web_ui
ports:
- 80:80
volumes:
- ${HOST_PATHS_PROJECT_DATA_PATH}/upload:$CONTAINER_PATHS_UPLOADED
# to map nginx ip with urls to host's /etc/hosts
etc_hosts_rewriter:
image: alpine:latest
entrypoint: ["/bin/sh", "/cm_configs/rewrite.sh"]
depends_on:
- nginx
volumes:
- /etc:/local_etc/