aivideodubbingapi-r08gi1/docker-compose.yml
Automated Action 55f5e5f5a8 Add comprehensive AI video dubbing features with Docker support
- Auto language detection using OpenAI Whisper during video upload
- Editable transcript interface for reviewing/correcting transcriptions
- Updated translation pipeline to use edited transcripts when available
- Migrated from JWT to Google OAuth-only authentication for better security
- Added complete Docker containerization with docker-compose.yml
- Updated database schema with language detection and transcript editing fields
- Enhanced API documentation and workflow in README
- Added comprehensive environment variable configuration

🤖 Generated with BackendIM

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-28 08:12:00 +00:00

68 lines
1.7 KiB
YAML

version: '3.8'
services:
api:
build:
context: .
dockerfile: Dockerfile
container_name: ai-video-dubbing-api
ports:
- "8000:8000"
volumes:
- ./storage:/app/storage
- ./alembic:/app/alembic
environment:
# Database
- DATABASE_URL=sqlite:////app/storage/db/db.sqlite
# OpenAI (required for transcription and translation)
- OPENAI_API_KEY=${OPENAI_API_KEY}
# AWS S3 (required for video storage)
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_REGION=${AWS_REGION:-us-east-1}
- S3_BUCKET_NAME=${S3_BUCKET_NAME}
# Google OAuth (required for authentication)
- GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID}
- GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET}
- GOOGLE_REDIRECT_URI=${GOOGLE_REDIRECT_URI:-http://localhost:3000/auth/callback}
# Application settings
- DEBUG=${DEBUG:-false}
- LOG_LEVEL=${LOG_LEVEL:-info}
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- app-network
# Optional: Add a reverse proxy (uncomment if needed)
# nginx:
# image: nginx:alpine
# container_name: ai-video-dubbing-nginx
# ports:
# - "80:80"
# - "443:443"
# volumes:
# - ./nginx.conf:/etc/nginx/nginx.conf:ro
# - ./ssl:/etc/ssl:ro
# depends_on:
# - api
# restart: unless-stopped
# networks:
# - app-network
networks:
app-network:
driver: bridge
volumes:
storage:
driver: local