services:
  gitea-mirror:
    image: ghcr.io/raylabshq/gitea-mirror:latest
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "wget", "--no-verbose", "--tries=3", "--spider", "http://localhost:4321/api/health"]
      interval: 30s
      timeout: 10s
      retries: 5
      start_period: 15s
    environment:
      # Absolutely required - cannot be changed via UI
      - BETTER_AUTH_SECRET=${BETTER_AUTH_SECRET}
      - BETTER_AUTH_URL=${BETTER_AUTH_URL}
      # Core settings with defaults
      - NODE_ENV=production
      - DATABASE_URL=file:data/gitea-mirror.db
      - HOST=0.0.0.0
      - PORT=4321
    volumes:
      - gitea_mirror_data:/app/data

volumes:
  gitea_mirror_data:
