version: '3.8' services: delphi-db: build: context: . dockerfile: Dockerfile args: BASE_IMAGE: ${BASE_IMAGE:-python:3.12-slim} container_name: delphi-database-dev ports: - "${EXTERNAL_PORT:-6920}:8000" environment: - DATABASE_URL=${DATABASE_URL:-sqlite:///data/delphi_database.db} - SECRET_KEY=${SECRET_KEY:-dev-secret-key-not-for-production} - DEBUG=${DEBUG:-True} - ACCESS_TOKEN_EXPIRE_MINUTES=${ACCESS_TOKEN_EXPIRE_MINUTES:-120} - CREATE_ADMIN_USER=${CREATE_ADMIN_USER:-true} - ADMIN_USERNAME=${ADMIN_USERNAME:-admin} - ADMIN_EMAIL=${ADMIN_EMAIL:-admin@delphicg.local} - ADMIN_PASSWORD=${ADMIN_PASSWORD} - ADMIN_FULLNAME=${ADMIN_FULLNAME:-System Administrator} - LOG_LEVEL=${LOG_LEVEL:-DEBUG} volumes: # Mount source code for development - .:/app # Database and persistent data - delphi_dev_data:/app/data # File uploads - delphi_dev_uploads:/app/uploads # Database backups - delphi_dev_backups:/app/backups command: python -m uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload --reload-dir app --reload-dir templates --reload-dir static restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/health"] interval: 30s timeout: 10s retries: 3 start_period: 40s volumes: delphi_dev_data: driver: local delphi_dev_uploads: driver: local delphi_dev_backups: driver: local