# ================================================== # docker-compose.yml -- local testing (Podman or Docker) # ================================================== services: marker-api: build: context: . dockerfile: Containerfile image: marker-api:latest env_file: - .env # optional; remove if no .env exists environment: - OLLAMA_HOST=${OLLAMA_HOST:-http://10.0.1.127:11434} - DEESEEK_OCR_MODEL=${DEESEEK_OCR_MODEL:-deepseek-ocr} - AMD_COMPUTE=${AMD_COMPUTE:-false} - TORCH_DEVICE=${TORCH_DEVICE:-} - MODEL_DTYPE=${MODEL_DTYPE:-float32} - PORT=8000 - HOST=0.0.0.0 - GUNICORN_WORKERS=${GUNICORN_WORKERS:-2} - GUNICORN_THREADS=${GUNICORN_THREADS:-4} - GUNICORN_TIMEOUT=${GUNICORN_TIMEOUT:-300} ports: - "8000:8000" volumes: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri - marker-data:/app/conversion_results restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/health"] interval: 30s timeout: 10s retries: 3 start_period: 120s volumes: marker-data: