-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yml
76 lines (74 loc) · 2.44 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
services:
web_server:
image: ccsamsterdam/ngincat:4.0.14
build: ./ngincat
container_name: ngincat
restart: unless-stopped
networks:
- amcat-net
environment:
- amcat4_client=http://amcat4client:3000
- amcat4_host=http://amcat4:5000
ports:
- 80:80 # [local port]:[container port]
depends_on:
- "web_client"
- "api"
web_client:
image: ccsamsterdam/amcat4client:4.0.14
build: ./amcat4client
container_name: amcat4client
restart: unless-stopped
networks:
- amcat-net
environment:
# this can be changed later, it is just the suggested default
- NEXT_PUBLIC_AMCAT_SERVER=http://localhost/amcat
depends_on:
- "api"
api:
image: ccsamsterdam/amcat4:4.0.14
build: ./amcat4
container_name: amcat4
restart: unless-stopped
networks:
- amcat-net
environment:
# note that these take precedence over values set in `amcat4 config``
- amcat4_elastic_host=http://elastic8:9200
- amcat4_host=http://localhost/amcat
- FORWARDED_ALLOW_IPS=*
depends_on:
- "db"
db:
image: docker.elastic.co/elasticsearch/elasticsearch:8.8.1
container_name: elastic8
restart: unless-stopped
# for security reasons, the database is only exposed to the other containers in the amcat-net network
# If you want to be able to access it locally, uncomment the following two lines
# ports:
# - 9200:9200
networks:
- amcat-net
environment:
- discovery.type=single-node
- bootstrap.memory_lock=true
# limits memory usage of elasticsearch; 4g or less can cause errors when uploading larger document collections
- "ES_JAVA_OPTS=-Xms4g -Xmx4g"
- xpack.security.enabled=false
# your database should have a folder on the host machine to permanently store data. By default
# a docker volume (called elastic-volume) is used, which leaves management of the files to Docker
# (see https://docs.docker.com/storage/volumes/). You can also store files somewhere else with
# (for example):
#
# volumes:
# - /path/to/elastic-data:/usr/share/elasticsearch/data # [local path]:[container path]
#
# In this case, you need to make sure that the folder `/path/to/elastic-data` exists and Docker
# has read and write access to it.
volumes:
- elastic-volume:/usr/share/elasticsearch/data:rw
networks:
amcat-net:
volumes:
elastic-volume: