-
Notifications
You must be signed in to change notification settings - Fork 4
/
docker-compose.yaml
90 lines (84 loc) · 1.81 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
81
82
83
84
85
86
87
88
89
90
version: "3.7"
services:
mongodb:
image: mongo:latest
container_name: mongodb
restart: always
environment:
MONGO_INITDB_DATABASE: ${DB_NAME}
MONGO_INITDB_ROOT_USERNAME: ${DB_USERNAME}
MONGO_INITDB_ROOT_PASSWORD: ${DB_PASSWORD}
ports:
- "0.0.0.0:${DB_PORT}:${DB_PORT}"
networks:
- APP_NETWORK
volumes:
- MONGO_DATA:/data/db
- MONGO_CONFIG:/data/configdb
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
mongo-express:
image: mongo-express:latest
container_name: mongo-express
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: ${DB_USERNAME}
ME_CONFIG_MONGODB_ADMINPASSWORD: ${DB_PASSWORD}
ME_CONFIG_MONGODB_SERVER: ${DB_HOST}
ME_CONFIG_MONGODB_PORT: ${DB_PORT}
ports:
- "0.0.0.0:8081:8081"
networks:
- APP_NETWORK
volumes:
- type: bind
source: ./wait-for.sh
target: /wait-for.sh
depends_on:
- mongodb
entrypoint:
- /bin/sh
- /wait-for.sh
- mongodb:27017
- --
- tini
- --
- /docker-entrypoint.sh
mongo-migrate:
container_name: migrate-mongo
build:
context: ./data_migration
dockerfile: Dockerfile
networks:
- APP_NETWORK
depends_on:
- mongodb
api:
container_name: api
build:
context: ./api
dockerfile: Dockerfile
ports:
- "0.0.0.0:7071:80"
networks:
- APP_NETWORK
depends_on:
- mongodb
- mongo-migrate
ui:
container_name: ui
build:
context: ./ui
dockerfile: Dockerfile
ports:
- "0.0.0.0:80:80"
networks:
- APP_NETWORK
depends_on:
- api
networks:
APP_NETWORK:
name: APP_NETWORK
volumes:
MONGO_DATA:
name: MONGO_DATA
MONGO_CONFIG:
name: MONGO_CONFIG