# Configuration similar to Fly.io deployment
# Mimics fly.toml settings

image:
  repository: ghcr.io/openclaw/openclaw
  tag: "2026.1.25"
  pullPolicy: IfNotPresent

gateway:
  bind: lan
  port: 3000  # Fly.io uses port 3000
  allowUnconfigured: true
  extraArgs: []

env:
  NODE_ENV: production
  OPENCLAW_STATE_DIR: /home/node/.openclaw
  OPENCLAW_WORKSPACE_DIR: /app/workspace
  NODE_OPTIONS: "--max-old-space-size=1536"  # Fly.io recommendation

secrets:
  create: false
  existingSecret: openclaw-secrets

persistence:
  enabled: true
  size: 1Gi  # Similar to Fly.io volume size

resources:
  limits:
    memory: 2Gi  # shared-cpu-2x on Fly.io
    cpu: 1000m
  requests:
    memory: 512Mi
    cpu: 250m

service:
  type: ClusterIP
  port: 3000

ingress:
  enabled: true
  className: nginx
  domain: "my-openclaw.example.com"
  annotations:
    nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
    nginx.ingress.kubernetes.io/websocket-services: "openclaw"
  tls:
    enabled: true
    secretName: openclaw-tls
    certManager:
      enabled: true
      issuer: letsencrypt-prod
