Initial commit: 프로젝트 초기 구성

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
jungwoo choi
2026-02-10 06:00:38 +09:00
commit 993ef9640e
21 changed files with 3168 additions and 0 deletions

83
docker-compose.yml Normal file
View File

@ -0,0 +1,83 @@
services:
# ===================
# Infrastructure
# ===================
mongodb:
image: mongo:7.0
container_name: ${PROJECT_NAME}-mongodb
restart: unless-stopped
environment:
MONGO_INITDB_ROOT_USERNAME: ${MONGO_USER:-admin}
MONGO_INITDB_ROOT_PASSWORD: ${MONGO_PASSWORD:-password123}
ports:
- "${MONGO_PORT:-27017}:27017"
volumes:
- mongodb_data:/data/db
networks:
- app-network
healthcheck:
test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
interval: 30s
timeout: 10s
retries: 3
redis:
image: redis:7-alpine
container_name: ${PROJECT_NAME}-redis
restart: unless-stopped
ports:
- "${REDIS_PORT:-6379}:6379"
volumes:
- redis_data:/data
networks:
- app-network
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 30s
timeout: 10s
retries: 3
# ===================
# Backend
# ===================
backend:
build:
context: ./backend
dockerfile: Dockerfile
container_name: ${PROJECT_NAME}-backend
restart: unless-stopped
ports:
- "${BACKEND_PORT:-8000}:8000"
environment:
- MONGODB_URL=mongodb://${MONGO_USER:-admin}:${MONGO_PASSWORD:-password123}@mongodb:27017/
- DB_NAME=${DB_NAME:-app_db}
- REDIS_URL=redis://redis:6379
depends_on:
mongodb:
condition: service_healthy
redis:
condition: service_healthy
networks:
- app-network
# ===================
# Frontend
# ===================
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: ${PROJECT_NAME}-frontend
restart: unless-stopped
ports:
- "${FRONTEND_PORT:-3000}:3000"
networks:
- app-network
volumes:
mongodb_data:
redis_data:
networks:
app-network:
driver: bridge