- FastAPI 백엔드 + MongoDB + Redis 구성 - React + Vite + TypeScript + shadcn/ui 프론트엔드 - Apache APISIX API Gateway 통합 - Docker Compose 기반 개발 환경 - 3단계 권한 체계 (System Admin, Group Admin, User) - 동적 테마 지원 - 환경별 설정 (dev/vei/prod) 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
73 lines
1.6 KiB
YAML
73 lines
1.6 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
mongodb:
|
|
image: mongo:7.0
|
|
container_name: vei-oauth-mongodb
|
|
restart: always
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: ${MONGO_USER}
|
|
MONGO_INITDB_ROOT_PASSWORD: ${MONGO_PASSWORD}
|
|
MONGO_INITDB_DATABASE: oauth_db_vei
|
|
volumes:
|
|
- vei_mongodb_data:/data/db
|
|
networks:
|
|
- vei-oauth-network
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: vei-oauth-redis
|
|
restart: always
|
|
command: redis-server --requirepass ${REDIS_PASSWORD} --appendonly yes
|
|
volumes:
|
|
- vei_redis_data:/data
|
|
networks:
|
|
- vei-oauth-network
|
|
|
|
backend:
|
|
image: ${NEXUS_URL}/oauth-backend:${VERSION}
|
|
container_name: vei-oauth-backend
|
|
restart: always
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- MONGODB_URL=mongodb://${MONGO_USER}:${MONGO_PASSWORD}@mongodb:27017/oauth_db_vei?authSource=admin
|
|
- REDIS_URL=redis://:${REDIS_PASSWORD}@redis:6379
|
|
depends_on:
|
|
- mongodb
|
|
- redis
|
|
networks:
|
|
- vei-oauth-network
|
|
|
|
frontend:
|
|
image: ${NEXUS_URL}/oauth-frontend:${VERSION}
|
|
container_name: vei-oauth-frontend
|
|
restart: always
|
|
depends_on:
|
|
- backend
|
|
networks:
|
|
- vei-oauth-network
|
|
|
|
nginx:
|
|
image: nginx:alpine
|
|
container_name: vei-oauth-nginx
|
|
restart: always
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
|
- ./nginx/ssl:/etc/nginx/ssl:ro
|
|
depends_on:
|
|
- frontend
|
|
- backend
|
|
networks:
|
|
- vei-oauth-network
|
|
|
|
volumes:
|
|
vei_mongodb_data:
|
|
vei_redis_data:
|
|
|
|
networks:
|
|
vei-oauth-network:
|
|
driver: bridge |