-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
95 lines (91 loc) · 3.14 KB
/
docker-compose.yml
File metadata and controls
95 lines (91 loc) · 3.14 KB
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
# Docker Compose version - removed for compatibility
services:
backend:
build:
context: .
dockerfile: Dockerfile
image: itzeep-backend:latest
container_name: itzeep-backend
restart: unless-stopped
environment:
- SPRING_PROFILES_ACTIVE=prod
- JAVA_OPTS=-Xms1g -Xmx2g -XX:MaxMetaspaceSize=512m -Duser.timezone=Asia/Seoul
- TZ=Asia/Seoul
# Database
- DATABASE_HOST=${DATABASE_HOST}
- DATABASE_PORT=${DATABASE_PORT:-3306}
- DATABASE_NAME=${DATABASE_NAME}
- DATABASE_URL=jdbc:mysql://${DATABASE_HOST}:${DATABASE_PORT:-3306}/${DATABASE_NAME}?useSSL=true&requireSSL=true&serverTimezone=Asia/Seoul&characterEncoding=UTF-8
- DATABASE_USERNAME=${DATABASE_USERNAME}
- DATABASE_PASSWORD=${DATABASE_PASSWORD}
# Redis
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_PASSWORD=${REDIS_PASSWORD:-itzeepredis2024!}
# MongoDB
- MONGODB_HOST=mongo
- MONGODB_PORT=27017
- MONGODB_DATABASE=${MONGODB_DATABASE:-itzeep}
- MONGODB_USERNAME=${MONGODB_USERNAME:-itzeepuser}
- MONGODB_PASSWORD=${MONGODB_PASSWORD:-itzeeppass2024!}
# JWT
- JWT_SECRET=${JWT_SECRET}
- JWT_ACCESS_TOKEN_VALIDITY=${JWT_ACCESS_TOKEN_VALIDITY:-3600}
- JWT_REFRESH_TOKEN_VALIDITY=${JWT_REFRESH_TOKEN_VALIDITY:-604800}
# OAuth2
- KAKAO_CLIENT_ID=${KAKAO_CLIENT_ID}
- KAKAO_CLIENT_SECRET=${KAKAO_CLIENT_SECRET}
- KAKAO_REDIRECT_URI=${KAKAO_REDIRECT_URI}
# AWS S3
- AWS_S3_ACCESS_KEY=${AWS_S3_ACCESS_KEY}
- AWS_S3_SECRET_KEY=${AWS_S3_SECRET_KEY}
- AWS_S3_BUCKET_NAME=${AWS_S3_BUCKET_NAME}
- AWS_S3_REGION=${AWS_S3_REGION:-ap-northeast-2}
# Email
- MAIL_HOST=${MAIL_HOST:-smtp.gmail.com}
- MAIL_PORT=${MAIL_PORT:-587}
- MAIL_USERNAME=${MAIL_USERNAME}
- MAIL_PASSWORD=${MAIL_PASSWORD}
# Application Settings
- SWAGGER_ENABLED=${SWAGGER_ENABLED:-false}
- CORS_ALLOWED_ORIGINS=${CORS_ALLOWED_ORIGINS}
- WEBSOCKET_ALLOWED_ORIGINS=${WEBSOCKET_ALLOWED_ORIGINS}
volumes:
- ./logs:/usr/local/tomcat/logs
ports:
- "8080:8080"
depends_on:
- redis
- mongo
redis:
image: redis:7-alpine
container_name: itzeep-redis
restart: unless-stopped
environment:
- REDIS_PASSWORD=${REDIS_PASSWORD:-itzeepredis2024!}
- TZ=Asia/Seoul
command: redis-server --requirepass ${REDIS_PASSWORD:-itzeepredis2024!} --maxmemory 512mb --maxmemory-policy allkeys-lru --save 900 1 --save 300 10 --save 60 10000
volumes:
- redis-data:/data
- /etc/localtime:/etc/localtime:ro
ports:
- "6379:6379"
mongo:
image: mongo:6-jammy
container_name: itzeep-mongo
restart: unless-stopped
environment:
- MONGO_INITDB_DATABASE=${MONGODB_DATABASE:-itzeep}
- MONGO_INITDB_ROOT_USERNAME=${MONGODB_USERNAME:-itzeepuser}
- MONGO_INITDB_ROOT_PASSWORD=${MONGODB_PASSWORD:-itzeeppass2024!}
- TZ=Asia/Seoul
volumes:
- mongo-data:/data/db
- mongo-config:/data/configdb
- /etc/localtime:/etc/localtime:ro
ports:
- "27017:27017"
volumes:
redis-data:
mongo-data:
mongo-config: