# Production configuration with Ingress and external secrets image: repository: ghcr.io/openclaw/openclaw tag: "2026.1.25" pullPolicy: IfNotPresent gateway: bind: lan port: 18789 allowUnconfigured: false # Use external secret in production secrets: create: false existingSecret: openclaw-secrets config: create: true data: agents: defaults: model: primary: "anthropic/claude-opus-4-5" fallbacks: - "anthropic/claude-sonnet-4-5" maxConcurrent: 4 sandbox: mode: "off" list: - id: main default: true auth: profiles: "anthropic:default": mode: token provider: anthropic gateway: mode: local bind: auto auth: mode: token controlUi: enabled: true channels: discord: enabled: true meta: lastTouchedVersion: "2026.1.25" persistence: enabled: true storageClass: fast-ssd size: 20Gi accessMode: ReadWriteOnce resources: limits: memory: 4Gi cpu: 2000m requests: memory: 1Gi cpu: 500m ingress: enabled: true className: nginx domain: "assistant.example.com" annotations: 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 affinity: nodeAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 preference: matchExpressions: - key: workload-type operator: In values: - stateful