forked from icssc/peterportal-client
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
82 lines (82 loc) · 1.63 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
version: "3.3"
services:
# Build express server
api:
build: ./api
container_name: api
restart: always
networks:
- main-network
ports:
- "5000:5000"
env_file:
- ./docker/api.env
environment:
- CHOKIDAR_USEPOLLING=true
- PORT=5000
# Point to local databases
- PETERPORTAL_MAIN_ES=http://es:9200/
- MONGO_URL=mongodb://mongo:27017/peterPortalDB
depends_on:
- es
- mongo
# Map to host directory for hot reloading
volumes:
- ./api:/usr/src/app
- /usr/src/app/node_modules
# Build react client
site:
build: ./site
container_name: site
restart: always
networks:
- main-network
ports:
- "3000:3000"
# For hot reloading
- "35729:35729"
environment:
- CHOKIDAR_USEPOLLING=true
- PORT=3000
# Map to host directory for hot reloading
volumes:
- ./site:/usr/src/app
- /usr/src/app/node_modules
mongo:
image: mongo:latest
container_name: mongo
restart: always
volumes:
- mongo:/data/db
networks:
- main-network
ports:
- "27017:27017"
es:
image: docker.elastic.co/elasticsearch/elasticsearch:7.13.2
container_name: es
environment:
- discovery.type=single-node
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- es:/usr/share/elasticsearch/data
networks:
- main-network
expose:
- "9200"
ports:
- "9200:9200"
es-seed:
build: ./docker/es-seed
networks:
- main-network
depends_on:
- es
volumes:
mongo:
es:
networks:
main-network: