-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yml
306 lines (306 loc) · 7.13 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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
---
version: '3.4'
volumes:
fedora:
db:
opensearch:
ldap:
localstack:
solr:
services:
iiif:
depends_on:
- localstack
image: nulib/iiif-express
restart: unless-stopped
read_only: true
volumes:
- type: bind
source: $HOME/.devbox_cert/devbox.library.full.pem
target: /home/node/.certs/public.crt
- type: bind
source: $HOME/.devbox_cert/devbox.library.key.pem
target: /home/node/.certs/private.key
- type: volume
target: /tmp
- type: volume
target: /var/run
ports:
- 8183:3000
environment:
TIFF_BUCKET: dev-pyramids
S3_ENDPOINT: http://localstack:4566/
AWS_ACCESS_KEY_ID: minio
AWS_SECRET_ACCESS_KEY: minio123
SSL_CERT: /home/node/.certs/public.crt
SSL_KEY: /home/node/.certs/private.key
healthcheck:
test:
- CMD
- curl
- --connect-to
- devbox.library.northwestern.edu:3000:localhost:3000
- https://devbox.library.northwestern.edu:3000/iiif/2
interval: 30s
timeout: 5s
retries: 3
db:
image: postgres:10-alpine
restart: unless-stopped
read_only: true
volumes:
- type: volume
source: db
target: /data
- type: volume
target: /tmp
- type: volume
target: /var/log
- type: volume
target: /var/run
environment:
- PGDATA=/data
- POSTGRES_USER=docker
- POSTGRES_PASSWORD=d0ck3r
ports:
- 5433:5432
command: postgres -c max_connections=300
healthcheck:
test: |
CMD echo 'SELECT 1' | \
PGPASSWORD=d0ck3r psql --host 127.0.0.1 --username docker \
--dbname docker --quiet --no-align --tuples-only
interval: 30s
timeout: 5s
retries: 3
elasticproxy:
depends_on:
- opensearch
image: nulib/elasticproxy:latest
restart: unless-stopped
read_only: true
volumes:
- type: volume
target: /home/node
- type: bind
source: $HOME/.devbox_cert/devbox.library.full.pem
target: /home/node/.certs/public.crt
- type: bind
source: $HOME/.devbox_cert/devbox.library.key.pem
target: /home/node/.certs/private.key
- type: volume
target: /tmp
- type: volume
target: /var/log
- type: volume
target: /var/run
ports:
- 3334:3334
environment:
UPSTREAM: http://opensearch:9200/
AWS_ACCESS_KEY_ID: fake_key_id
AWS_SECRET_ACCESS_KEY: fake_access_key
API_TOKEN_HEADER: X-Api-Token
API_TOKEN_SECRET: ab00ffc725da64fa07b20f42ed8bbcf0fda5779aa55c90cedf3a81e09e3a2b14
NUSSO_BASE_URL: ${SETTINGS__NUSSO__BASE_URL}
NUSSO_API_KEY: ${SETTINGS__NUSSO__CONSUMER_KEY}
SSL_CERT: /home/node/.certs/public.crt
SSL_KEY: /home/node/.certs/private.key
healthcheck:
test:
- CMD
- curl
- --connect-to
- devbox.library.northwestern.edu:3334:localhost:3334
- https://devbox.library.northwestern.edu:3334/auth/whoami
interval: 30s
timeout: 5s
retries: 3
opensearch:
image: opensearchproject/opensearch:1.3.1
restart: unless-stopped
read_only: false
volumes:
- type: volume
source: opensearch
target: /usr/share/opensearch/data
- type: volume
target: /tmp
- type: volume
target: /usr/share/opensearch/logs
ports:
- 9201:9200
environment:
- bootstrap.memory_lock=true
- "OPENSEARCH_JAVA_OPTS=-Xms1024m -Xmx1024m"
- "DISABLE_INSTALL_DEMO_CONFIG=true"
- "DISABLE_SECURITY_PLUGIN=true"
- discovery.type=single-node
ulimits:
memlock:
soft: -1
hard: -1
healthcheck:
test:
- CMD
- curl
- "-f"
- http://localhost:9200/
interval: 30s
timeout: 5s
retries: 3
fedora:
image: samvera/fcrepo4:4.7.5
restart: unless-stopped
read_only: true
volumes:
- type: volume
source: fedora
target: /data
- type: volume
target: /tmp
- type: volume
target: /var/lib/jetty
- type: volume
target: /var/log
- type: volume
target: /var/run
ports:
- 8984:8080
hls:
depends_on:
- localstack
image: avalonmediasystem/nginx:minio
environment:
- AVALON_DOMAIN=http://host.docker.internal:3000
- AVALON_STREAMING_BUCKET_URL=https://devbox.library.northwestern.edu:4566/derivatives/
ports:
- '8880:80'
opensearch-dashboard:
image: opensearchproject/opensearch-dashboards:1.3.0
ports:
- 5602:5601
environment:
- 'OPENSEARCH_HOSTS=["http://opensearch:9200"]'
- "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true"
healthcheck:
test:
- CMD
- curl
- "-f"
- http://localhost:5601/
interval: 30s
timeout: 5s
retries: 3
ldap:
image: nulib/ldap-alpine
restart: unless-stopped
volumes:
- type: volume
source: ldap
target: /var/lib/samba
ports:
- 390:389
- 637:636
environment:
DOMAIN: library.northwestern.edu
DOMAINPASS: d0ck3rAdm1n!
INSECURELDAP: "true"
NOCOMPLEXITY: "true"
healthcheck:
test:
- CMD
- echo
- ""
- "|"
- nc
- localhost
- "389"
interval: 30s
timeout: 5s
retries: 3
localstack:
image: localstack/localstack
restart: unless-stopped
volumes:
- localstack:/data
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./extras/localstack/aws:/root/.aws:ro
- ./extras/localstack/scripts:/tmp/scripts:ro
- "${TMPDIR:-/tmp}/localstack_dev:/tmp/localstack"
ports:
- 127.0.0.1:53:53
- 127.0.0.1:53:53/udp
- 127.0.0.1:443:443
- 127.0.0.1:4510-4559:4510-4559
- 127.0.0.1:4566:4566
environment:
DATA_DIR: /data
DEBUG: ${LOCALSTACK_DEBUG:-}
DISABLE_CORS_CHECKS: 1
DNS_ADDRESS: 127.0.0.1
DOCKER_HOST: unix:///var/run/docker.sock
EDGE_PORT: 4566
EDGE_PORT_HTTP: 4566
LAMBDA_DOCKER_NETWORK: devstack_default
LAMBDA_EXECUTOR: docker-reuse
LOCALSTACK_API_KEY: ${LOCALSTACK_API_KEY:-}
LS_LOG: ${LS_LOG:-}
healthcheck:
test:
- CMD
- /tmp/scripts/healthcheck.sh
interval: 30s
timeout: 30s
retries: 5
redis:
image: redis:alpine
restart: unless-stopped
read_only: true
volumes:
- type: volume
target: /tmp
- type: volume
target: /var/log
- type: volume
target: /var/run
ports:
- 6380:6379
healthcheck:
test:
- CMD
- redis-cli
- ping
interval: 30s
timeout: 5s
retries: 3
solr:
image: solr:7.2-alpine
restart: unless-stopped
read_only: true
volumes:
- type: volume
source: solr
target: /opt/solr/server/solr
- type: volume
target: /opt/solr/server
- type: volume
target: /tmp
- type: volume
target: /var/log
- type: volume
target: /var/run
ports:
- 8983:8983
- 9983:9983
command: solr -f -cloud
healthcheck:
test:
- CMD
- wget
- "-O"
- "/dev/null"
- http://localhost:8983/solr/
interval: 30s
timeout: 5s
retries: 3