Een minimaal startpunt om OpenClaw op Kubernetes uit te voeren — geen productieklare deployment. Het behandelt de kernresources en is bedoeld om aan je omgeving te worden aangepast.Documentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Waarom geen Helm?
OpenClaw is één container met enkele configuratiebestanden. De interessante aanpassing zit in agentinhoud (Markdown-bestanden, Skills, configuratie-overschrijvingen), niet in infrastructuurtemplating. Kustomize verwerkt overlays zonder de overhead van een Helm chart. Als je deployment complexer wordt, kan een Helm chart bovenop deze manifests worden gelegd.Wat je nodig hebt
- Een draaiend Kubernetes-cluster (AKS, EKS, GKE, k3s, kind, OpenShift, enz.)
kubectlverbonden met je cluster- Een API-sleutel voor ten minste één modelprovider
Snelle start
./scripts/k8s/deploy.sh --show-token het token af na de deployment.
Lokaal testen met Kind
Als je geen cluster hebt, maak er dan lokaal een aan met Kind:./scripts/k8s/deploy.sh.
Stap voor stap
1) Deployen
Optie A — API-sleutel in de omgeving (één stap):--show-token met een van beide opdrachten als je het token voor lokale tests naar stdout wilt laten afdrukken.
2) Toegang tot de Gateway
Wat wordt gedeployed
Aanpassing
Agentinstructies
Bewerk deAGENTS.md in scripts/k8s/manifests/configmap.yaml en deploy opnieuw:
Gateway-configuratie
Bewerkopenclaw.json in scripts/k8s/manifests/configmap.yaml. Zie Gateway-configuratie voor de volledige referentie.
Providers toevoegen
Voer opnieuw uit met extra geëxporteerde sleutels:Aangepaste namespace
Aangepaste image
Bewerk het veldimage in scripts/k8s/manifests/deployment.yaml:
Beschikbaar maken buiten port-forward
De standaardmanifests binden de Gateway binnen de pod aan loopback. Dat werkt metkubectl port-forward, maar niet met een Kubernetes Service of Ingress-pad dat het pod-IP moet kunnen bereiken.
Als je de Gateway via een Ingress of load balancer wilt beschikbaar maken:
- Wijzig de Gateway-bind in
scripts/k8s/manifests/configmap.yamlvanloopbacknaar een niet-loopback-bind die past bij je deploymentmodel - Houd Gateway-authenticatie ingeschakeld en gebruik een passend TLS-beëindigd toegangspunt
- Configureer de Control UI voor externe toegang met het ondersteunde webbeveiligingsmodel (bijvoorbeeld HTTPS/Tailscale Serve en expliciet toegestane origins wanneer nodig)
Opnieuw deployen
Verwijderen
Architectuurnotities
- De Gateway bindt standaard binnen de pod aan loopback, dus de meegeleverde setup is bedoeld voor
kubectl port-forward - Geen cluster-scoped resources — alles staat in één namespace
- Beveiliging:
readOnlyRootFilesystem,drop: ALL-capabilities, niet-rootgebruiker (UID 1000) - De standaardconfiguratie houdt de Control UI op het veiligere pad voor lokale toegang: loopback-bind plus
kubectl port-forwardnaarhttp://127.0.0.1:18789 - Als je verder gaat dan toegang via localhost, gebruik dan het ondersteunde externe model: HTTPS/Tailscale plus de juiste Gateway-bind en origin-instellingen voor de Control UI
- Secrets worden gegenereerd in een tijdelijke map en direct op het cluster toegepast — er wordt geen geheim materiaal naar de repo-checkout geschreven