:80 { encode gzip # Reverse proxy — strips prefix and forwards to backend handle_path /api/markitdown/* { reverse_proxy api-markitdown:8000 } handle_path /api/docling/* { reverse_proxy api-docling:8000 } handle_path /api/unlimited-ocr/* { reverse_proxy api-unlimited-ocr:8000 } # Static files with SPA fallback handle { root * /srv file_server try_files {path} /index.html } }