Point de départ minimal pour exécuter OpenClaw sur Kubernetes — ce n’est pas un déploiement prêt pour la production. Il couvre les ressources de base et est destiné à être adapté à votre environnement.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.
Pourquoi pas Helm ?
OpenClaw est un conteneur unique avec quelques fichiers de configuration. La personnalisation intéressante se trouve dans le contenu des agents (fichiers Markdown, Skills, substitutions de configuration), pas dans les modèles d’infrastructure. Kustomize gère les surcouches sans la surcharge d’un chart Helm. Si votre déploiement devient plus complexe, un chart Helm peut être ajouté par-dessus ces manifestes.Ce qu’il vous faut
- Un cluster Kubernetes en cours d’exécution (AKS, EKS, GKE, k3s, kind, OpenShift, etc.)
kubectlconnecté à votre cluster- Une clé d’API pour au moins un fournisseur de modèles
Démarrage rapide
./scripts/k8s/deploy.sh --show-token affiche le jeton après le déploiement.
Tests locaux avec Kind
Si vous n’avez pas de cluster, créez-en un localement avec Kind :./scripts/k8s/deploy.sh.
Étape par étape
1) Déployer
Option A — clé d’API dans l’environnement (une seule étape) :--show-token avec l’une ou l’autre commande si vous voulez afficher le jeton sur stdout pour les tests locaux.
2) Accéder au Gateway
Ce qui est déployé
Personnalisation
Instructions de l’agent
Modifiez le fichierAGENTS.md dans scripts/k8s/manifests/configmap.yaml et redéployez :
Configuration du Gateway
Modifiezopenclaw.json dans scripts/k8s/manifests/configmap.yaml. Consultez Configuration du Gateway pour la référence complète.
Ajouter des fournisseurs
Relancez avec des clés supplémentaires exportées :Espace de noms personnalisé
Image personnalisée
Modifiez le champimage dans scripts/k8s/manifests/deployment.yaml :
Exposer au-delà de port-forward
Les manifestes par défaut lient le Gateway à loopback à l’intérieur du pod. Cela fonctionne aveckubectl port-forward, mais pas avec un Service Kubernetes ni avec un chemin Ingress qui doit atteindre l’adresse IP du pod.
Si vous voulez exposer le Gateway via un Ingress ou un équilibreur de charge :
- Remplacez la liaison du Gateway dans
scripts/k8s/manifests/configmap.yaml, deloopbackvers une liaison non-loopback correspondant à votre modèle de déploiement - Gardez l’authentification du Gateway activée et utilisez un point d’entrée approprié avec terminaison TLS
- Configurez l’UI de contrôle pour l’accès distant avec le modèle de sécurité web pris en charge (par exemple HTTPS/Tailscale Serve et des origines autorisées explicites si nécessaire)
Redéployer
Suppression
Notes d’architecture
- Le Gateway se lie à loopback à l’intérieur du pod par défaut ; la configuration incluse est donc destinée à
kubectl port-forward - Aucune ressource à portée cluster — tout se trouve dans un seul espace de noms
- Sécurité :
readOnlyRootFilesystem, capacitésdrop: ALL, utilisateur non-root (UID 1000) - La configuration par défaut garde l’UI de contrôle sur le chemin d’accès local le plus sûr : liaison loopback plus
kubectl port-forwardvershttp://127.0.0.1:18789 - Si vous dépassez l’accès localhost, utilisez le modèle distant pris en charge : HTTPS/Tailscale plus la liaison de Gateway appropriée et les paramètres d’origine de l’UI de contrôle
- Les secrets sont générés dans un répertoire temporaire et appliqués directement au cluster — aucune donnée secrète n’est écrite dans le checkout du dépôt