Titik awal minimal untuk menjalankan OpenClaw di Kubernetes — bukan deployment siap produksi. Ini mencakup resource inti dan dimaksudkan untuk disesuaikan dengan lingkungan Anda.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Mengapa bukan Helm?
OpenClaw adalah satu container dengan beberapa file konfigurasi. Kustomisasi yang penting ada pada konten agen (file markdown, skills, override konfigurasi), bukan templating infrastruktur. Kustomize menangani overlay tanpa overhead Helm chart. Jika deployment Anda menjadi lebih kompleks, Helm chart dapat dilapiskan di atas manifes ini.Yang Anda butuhkan
- Cluster Kubernetes yang berjalan (AKS, EKS, GKE, k3s, kind, OpenShift, dll.)
kubectlyang terhubung ke cluster Anda- Kunci API untuk setidaknya satu penyedia model
Mulai cepat
./scripts/k8s/deploy.sh --show-token mencetak token setelah deploy.
Pengujian lokal dengan Kind
Jika Anda tidak memiliki cluster, buat satu secara lokal dengan Kind:./scripts/k8s/deploy.sh.
Langkah demi langkah
1) Deploy
Opsi A — kunci API di environment (satu langkah):--show-token dengan salah satu perintah jika Anda ingin token dicetak ke stdout untuk pengujian lokal.
2) Akses Gateway
Yang di-deploy
Kustomisasi
Instruksi agen
EditAGENTS.md di scripts/k8s/manifests/configmap.yaml dan deploy ulang:
Konfigurasi Gateway
Editopenclaw.json di scripts/k8s/manifests/configmap.yaml. Lihat Konfigurasi Gateway untuk referensi lengkap.
Tambahkan penyedia
Jalankan ulang dengan kunci tambahan yang diekspor:Namespace kustom
Image kustom
Edit fieldimage di scripts/k8s/manifests/deployment.yaml:
Ekspos di luar port-forward
Manifes default mengikat Gateway ke loopback di dalam pod. Itu berfungsi dengankubectl port-forward, tetapi tidak berfungsi dengan Kubernetes Service atau jalur Ingress yang perlu menjangkau IP pod.
Jika Anda ingin mengekspos Gateway melalui Ingress atau load balancer:
- Ubah bind Gateway di
scripts/k8s/manifests/configmap.yamldariloopbackke bind non-loopback yang sesuai dengan model deployment Anda - Tetap aktifkan autentikasi Gateway dan gunakan entrypoint yang tepat dengan terminasi TLS
- Konfigurasikan Control UI untuk akses jarak jauh menggunakan model keamanan web yang didukung (misalnya HTTPS/Tailscale Serve dan origin yang diizinkan secara eksplisit bila diperlukan)
Deploy ulang
Teardown
Catatan arsitektur
- Gateway terikat ke loopback di dalam pod secara default, jadi setup yang disertakan ditujukan untuk
kubectl port-forward - Tidak ada resource cluster-scoped — semuanya berada dalam satu namespace
- Keamanan: kapabilitas
readOnlyRootFilesystem,drop: ALL, pengguna non-root (UID 1000) - Konfigurasi default menjaga Control UI pada jalur akses lokal yang lebih aman: bind loopback plus
kubectl port-forwardkehttp://127.0.0.1:18789 - Jika Anda beralih dari akses localhost, gunakan model jarak jauh yang didukung: HTTPS/Tailscale plus bind Gateway yang sesuai dan pengaturan origin Control UI
- Secret dibuat di direktori sementara dan diterapkan langsung ke cluster — tidak ada material secret yang ditulis ke checkout repo