-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
73 lines (68 loc) · 1.76 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
version: '3.8'
services:
app:
build:
context: .
dockerfile: Dockerfile
container_name: app
image: nodejs
restart: unless-stopped
env_file: .env
environment:
- ENV_VARIABLES_ORIGIN=env
- PORT=${PORT}
- DATABASE_HOST=mongodb
- DATABASE_NAME=${DATABASE_NAME}
- DATABASE_PASSWORD=${DATABASE_PASSWORD}
- DATABASE_PORT=27017
- DATABASE_PREFIX=mongodb://
- DATABASE_USERNAME=${DATABASE_USERNAME}
- ACCESS_TOKEN_EXPIRATION_SECONDS=${ACCESS_TOKEN_EXPIRATION_SECONDS}
- ACCESS_TOKEN_SECRET=${ACCESS_TOKEN_SECRET}
- REFRESH_TOKEN_EXPIRATION_SECONDS=${REFRESH_TOKEN_EXPIRATION_SECONDS}
- REFRESH_TOKEN_SECRET=${REFRESH_TOKEN_SECRET}
- REDIS_FLUSH_ON_STARTUP=${REDIS_FLUSH_ON_STARTUP}
- REDIS_HOST=redis
- REDIS_PORT=${REDIS_PORT}
depends_on:
- mongodb
- redis
ports:
- ${PORT}:${PORT}
volumes:
- .:/home/node/app
- node_modules:/home/node/app/node_modules
networks:
- app-network
mongodb:
container_name: mongodb
image: mongodb/mongodb-community-server:6.0-ubi8
restart: unless-stopped
env_file: .env
environment:
- MONGO_INITDB_DATABASE=${DATABASE_NAME}
- MONGO_INITDB_ROOT_USERNAME=${DATABASE_USERNAME}
- MONGO_INITDB_ROOT_PASSWORD=${DATABASE_PASSWORD}
command: mongod --quiet --logpath /dev/null
volumes:
- dbdata:/data/db
networks:
- app-network
redis:
container_name: redis
image: redis:latest
restart: always
env_file: .env
volumes:
- redisdata:/data/redis
networks:
- app-network
ports:
- ${REDIS_PORT}:${REDIS_PORT}
networks:
app-network:
driver: bridge
volumes:
dbdata:
node_modules:
redisdata: