version: "3.8"
services:
  docfast:
    build: .
    restart: unless-stopped
    ports:
      - "127.0.0.1:3100:3100"
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      - API_KEYS=${API_KEYS}
      - PORT=3100
      - NODE_ENV=production
      - STRIPE_SECRET_KEY=${STRIPE_SECRET_KEY}
      - STRIPE_WEBHOOK_SECRET=${STRIPE_WEBHOOK_SECRET}
      - BASE_URL=${BASE_URL:-https://docfast.dev}
      - PRO_KEYS=${PRO_KEYS}
      - SMTP_HOST=host.docker.internal
      - SMTP_PORT=25
      - DATABASE_HOST=172.17.0.1
      - DATABASE_PORT=5432
      - DATABASE_NAME=docfast
      - DATABASE_USER=docfast
      - DATABASE_PASSWORD=${DATABASE_PASSWORD:-docfast}
      - POOL_SIZE=15
      - BROWSER_COUNT=1
      - PAGES_PER_BROWSER=15
    volumes:
      - docfast-data:/app/data
    mem_limit: 2560m
    cpus: 1.5
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:3100/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s

volumes:
  docfast-data:
    driver: local