Initial commit: Whisper API with FastAPI, GPU support and Admin Dashboard

This commit is contained in:
Dominic Ballenthin
2026-01-28 23:16:44 +01:00
commit 008ef63bfd
28 changed files with 1871 additions and 0 deletions

39
docker-compose.yml Normal file
View File

@@ -0,0 +1,39 @@
version: '3.8'
services:
whisper-api:
build:
context: .
dockerfile: docker/Dockerfile
container_name: whisper-api
restart: unless-stopped
ports:
- "${PORT:-8000}:8000"
environment:
- PORT=8000
- HOST=0.0.0.0
- WHISPER_MODEL=${WHISPER_MODEL:-large-v3}
- WHISPER_DEVICE=${WHISPER_DEVICE:-cuda}
- WHISPER_COMPUTE_TYPE=${WHISPER_COMPUTE_TYPE:-float16}
- API_KEYS=${API_KEYS}
- ADMIN_USER=${ADMIN_USER:-admin}
- ADMIN_PASSWORD=${ADMIN_PASSWORD:--whisper12510-}
- LOG_RETENTION_DAYS=${LOG_RETENTION_DAYS:-30}
- DATABASE_URL=sqlite:///app/data/whisper_api.db
volumes:
- ./models:/app/models
- ./data:/app/data
- ./uploads:/app/uploads
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s