# ============================================================================ # Avvio dell'app via Docker. CPU di default. # Per la GPU: usare un'immagine base CUDA e abilitare la sezione `deploy`. # ============================================================================ services: app: build: context: . args: ENABLE_ML: "${ENABLE_ML:-false}" image: anonimyzer-gare:latest ports: - "8000:8000" env_file: - .env environment: DEVICE: "${DEVICE:-cpu}" restart: unless-stopped healthcheck: test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/healthz')"] interval: 30s timeout: 5s retries: 3 # --- GPU opzionale (decommentare con runtime NVIDIA disponibile) --- # deploy: # resources: # reservations: # devices: # - driver: nvidia # count: 1 # capabilities: [gpu] # --- Coda asincrona opzionale per i job pesanti in produzione --- # redis: # image: redis:7-alpine # restart: unless-stopped