Tests indépendants Mis à jour avril 2026 387 guides d'auto-hébergement 5 fournisseurs VPS testés

tutorial

Comment héberger OpenClaw en auto-hébergement sur une VPS (Configuration de production 2026)

Apprenez à héberger OpenClaw vous-même sur un VPS, avec un guide détaillé pas à pas sur l'installation, la configuration et la sécurisation de OpenClaw.

OpenClaw est passé de 9K à 210K étoiles sur GitHub en six semaines, ce qui signifie que la documentation n’a pas encore rattrapé les besoins de la production. La mise en évidence fonctionne. La configuration que vous souhaitez vraiment pour une utilisation quotidienne nécessite un travail plus précis, notamment autour des gateways de messagerie et de l’isolation du sandbox des outils.

Voici l’installation en production que je réalise sur un Hetzner CCX23, avec les aspects que la documentation officielle ne vous avertit pas.

Liste de vérification avant l’installation

Vous avez besoin de :

La taille du VPS est plus critique ici que pour beaucoup d’outils, car le registre d’outils MCP et les démons gateway d’OpenClaw s’additionnent. Le guide du meilleur VPS pour OpenClaw couvre en détail la formule des spécifications.

Étape 1 : Provisionner et sécuriser le VPS

Mettez à jour le système et installez les prérequis :

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git ufw ca-certificates gnupg

Configurez le pare-feu avant tout :

sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

Installez Docker en suivant la documentation officielle (ne pas utiliser le paquet de la distro, il est en retard) :

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
newgrp docker

Vérifiez Docker :

docker run --rm hello-world

Étape 2 : Clonez et configurez OpenClaw

Clonez le repo officiel :

mkdir -p /opt
sudo git clone https://github.com/openclaw/openclaw.git /opt/openclaw
sudo chown -R $USER:$USER /opt/openclaw
cd /opt/openclaw

Créez la configuration d’exemple et modifiez-la :

cp .env.example .env
nano .env

Les paramètres critiques à changer :

POSTGRES_PASSWORD=<générez-un-mot-de-passe-fort>
[email protected]
ADMIN_PASSWORD=<générez-encore-un-mot-de-passe-fort>
PUBLIC_DOMAIN=openclaw.yourdomain.com
MODEL_PROVIDER=openai
OPENAI_API_KEY=sk-...

Pour le mot de passe de la base de données, générez-en un aléatoire avec openssl rand -hex 24. Idem pour le mot de passe admin. N’utilisez pas de valeurs par défaut, les déploiements OpenClaw sont scannés pour des identifiants leakés dans les heures suivant leur mise en ligne.

Étape 3 : Démarrez les conteneurs

docker compose pull
docker compose up -d

Le premier démarrage dure entre 2 et 5 minutes car il initialise la base Postgres et exécute les migrations. Surveillez les logs :

docker compose logs -f openclaw

Cherchez Server listening on :8080 pour confirmer que c’est opérationnel.

Étape 4 : Configurez le reverse proxy

OpenClaw fonctionne en interne sur le port 8080. Placez Caddy devant pour gérer HTTPS. Installez Caddy :

sudo apt install -y caddy

Configurez /etc/caddy/Caddyfile :

openclaw.yourdomain.com {
  reverse_proxy localhost:8080
}

Assurez-vous que votre enregistrement DNS A pointe vers la VPS, puis rechargez Caddy :

sudo systemctl reload caddy

Caddy gère automatiquement Let’s Encrypt. Visitez https://openclaw.yourdomain.com et vous devriez voir l’écran de connexion OpenClaw avec un certificat valide.

Étape 5 : Configuration initiale via l’interface web

Connectez-vous avec les identifiants admin du fichier .env. L’assistant de configuration demande :

  1. La configuration du fournisseur du modèle (détectée automatiquement si renseignée dans .env)
  2. Nom de l’espace de travail initial
  3. Intégrations MCP (commencez avec le système de fichiers et la recherche web)
  4. Premier compte utilisateur

Testez que l’agent fonctionne : dans une conversation avec l’espace de travail par défaut, demandez « Que peux-tu faire ? » L’agent doit décrire ses outils disponibles.

Si vous avez une erreur concernant le point de terminaison du modèle, vérifiez les logs :

docker compose logs openclaw | grep -i error

Problèmes courants à cette étape :

Étape 6 : Ajoutez les gateways de messagerie

C’est là que OpenClaw montre toute sa puissance. Pour WhatsApp Business :

  1. Obtenez un compte API WhatsApp Business (via Meta, Twilio ou 360dialog)
  2. Dans l’administration d’OpenClaw : Intégrations → WhatsApp → Ajouter
  3. Collez votre token d’accès et l’ID du numéro de téléphone
  4. Configurez l’URL du webhook : https://openclaw.yourdomain.com/webhooks/whatsapp

Pour Slack :

  1. Créez une application Slack sur api.slack.com/apps
  2. Activez le Socket Mode et les Abonnements d’événements
  3. Installez dans votre workspace
  4. Dans OpenClaw : Intégrations → Slack → Ajouter, collez le token du bot et le token de l’application

Pour Telegram :

  1. Créez un bot via @BotFather, récupérez le token
  2. Dans OpenClaw : Intégrations → Telegram → Ajouter, collez le token

Chaque gateway apparaît comme un nouveau canal de conversation dans OpenClaw. Le même agent sert tous les canaux, avec l’historique préservé par utilisateur et par canal.

Étape 7 : Renforcement du registre d’outils

Le registre d’outils MCP donne tout le pouvoir à OpenClaw et comporte aussi de vrais enjeux de sécurité. La configuration par défaut permet à l’agent d’installer de nouveaux outils à tout moment, ce qui est pratique pour la capacité mais dangereux pour la sécurité en production.

Limitez cela en modifiant .env :

TOOL_REGISTRY_MODE=allowlist
TOOL_REGISTRY_ALLOWLIST=filesystem,web-search,github,gmail

Dorénavant, seul les outils de votre liste autorisée peuvent être invoqués. Ajoutez-en d’autres en les vérifiant. Redémarrez :

docker compose restart openclaw

Étape 8 : Stratégie de sauvegarde

Les deux éléments qui doivent absolument survivre à une panne de la VPS : la base Postgres et le volume de stockage des fichiers.

Ajoutez un cron de sauvegarde quotidien :

sudo crontab -e

Ajoutez :

0 3 * * * cd /opt/openclaw && docker compose exec -T postgres pg_dump -U openclaw openclaw | gzip > /backup/openclaw-$(date +\%Y\%m\%d).sql.gz && find /backup -name "openclaw-*.sql.gz" -mtime +14 -delete

Cela s’exécute tous les jours à 3h du matin, sauvegarde Postgres, et conserve 14 jours de sauvegardes. Reproduisez ces sauvegardes hors site (S3, Backblaze, autre VPS) pour une vraie récupération après sinistre.

Et après ?

Une fois l’installation de base opérationnelle, les priorités suivantes sont généralement :

Frequently asked questions

Combien de temps faut-il réellement pour installer OpenClaw ?

Environ 25 minutes sur un VPS Ubuntu 24.04 neuf avec le chemin Docker Compose. La étape la plus lente est le pull des conteneurs (de 10 à 15 minutes selon la bande passante de votre VPS). Ensuite, la configuration initiale via l'interface web prend entre 5 et 10 minutes pour le point de terminaison du modèle, le compte admin et votre premier gateway de messagerie.

Ai-je besoin de Docker ou puis-je installer OpenClaw nativement ?

Docker Compose est la voie supportée et recommandée. L'installation native est techniquement possible en suivant les composants dans le fichier compose, mais l'isolation du sandbox de l'outil rend Docker effectivement nécessaire pour un usage en production. Tenter de faire fonctionner le registre d'outils MCP sans isolation de conteneurs crée de vrais problèmes de sécurité. Utilisez Docker.

Quels ports OpenClaw doit-il ouvrir sur la VPS ?

Port 443 pour l'accès HTTPS à l'interface web (via votre reverse proxy). En interne, OpenClaw utilise le port 8080 pour l'API et le 5432 pour Postgres, mais ces ports ne doivent pas être exposés publiquement. Les gateways de messagerie (WhatsApp, Telegram, Slack) utilisent uniquement des connexions sortantes et ne nécessitent pas de ports entrants. Limitez votre pare-feu à seulement 22 (SSH) et 443.

Comment mettre à jour OpenClaw après l'installation sans perdre mes données ?

Le pattern standard : arrêter les conteneurs, tirer les nouvelles images, redémarrer. Le volume Postgres et le volume de stockage de fichiers persistent à travers les mises à jour des conteneurs. Faites toujours une capture d'état (snapshot) de la VPS ou sauvegardez la base de données Postgres avant de mettre à jour, surtout pour les grandes versions. Les notes de version indiquent toute modification de schéma bloquante nécessitant une migration manuelle.