docker-compose.yml•1.29 kB
version: '3.8'
services:
fastapi-mcp-app:
build:
context: .
dockerfile: Dockerfile
container_name: fastapi-mcp-template
ports:
- "8000:8000" # FastAPI 서버
- "8001:8001" # MCP 서버
environment:
- PYTHONPATH=/app/src
- ENVIRONMENT=production
volumes:
# 개발 시 코드 변경 사항 반영 (선택사항)
- ./src:/app/src:ro
- ./logs:/app/logs
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- app-network
# 개발용 서비스 (선택사항)
fastapi-mcp-dev:
build:
context: .
dockerfile: Dockerfile
container_name: fastapi-mcp-template-dev
ports:
- "8002:8000" # FastAPI 서버 (개발용)
- "8003:8001" # MCP 서버 (개발용)
environment:
- PYTHONPATH=/app/src
- ENVIRONMENT=development
- DEBUG=true
volumes:
- ./src:/app/src
- ./logs:/app/logs
command: ["uv", "run", "python", "run_server.py"]
restart: "no"
profiles:
- dev
networks:
- app-network
networks:
app-network:
driver: bridge
volumes:
logs:
driver: local