# Comment installer OpenClaw avec Docker en toute sécurité ?

Déployer OpenClaw avec Docker constitue une solution efficace pour exécuter cet agent IA dans un environnement isolé, stable et facile à maintenir. La conteneurisation permet de séparer clairement l’application du système hôte, de simplifier la gestion des dépendances et de faciliter les mises à jour. Dans cet article, nous vous expliquons étape par étape comment préparer votre serveur, installer OpenClaw avec Docker et Docker Compose, sécuriser la configuration et mettre en place une exploitation fiable en production.

## Pourquoi installer OpenClaw avec Docker Compose ?

Avant de vous lancer, vous devez comprendre [ce qu’est OpenClaw](https://www.ionos.fr/digitalguide/serveur/know-how/openclaw/) et pourquoi il est judicieux d’exploiter la solution avec [Docker Compose](https://www.ionos.fr/digitalguide/serveur/configuration/tutoriel-docker-compose/):

- OpenClaw est un [agent IA](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/agent-ia/) autonome, capable d’**exécuter différentes tâches de manière indépendante**. Il peut traiter des messages, analyser des fichiers et automatiser des conversations par chat.
- OpenClaw peut fonctionner sur votre propre serveur, est [open source](https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-que-lopen-source/) et propose **plus de 50 intégrations** (WhatsApp, Telegram, Slack, Discord, etc.).
- La méthode d’installation recommandée et la plus stable est via Docker Compose, car **toutes les dépendances sont automatiquement gérées de manière isolée**. Vous pourrez de plus les mettre à jour ou les étendre plus facilement par la suite.

OpenClaw utilise Docker comme environnement isolé. Via Docker Compose, plusieurs conteneurs sont ensuite démarrés simultanément, notamment Gateway, CLI, éventuellement Sandbox et des outils externes, qui constituent ensemble le système.

Note OpenClaw agit, dans de nombreux environnements, principalement comme service de passerelle et d’orchestration, qui relie des messageries, des outils et des services à un [grand modèle de langage (LLM)](https://www.ionos.fr/digitalguide/serveur/know-how/large-language-model/). Le degré d’autonomie avec lequel OpenClaw fonctionnera ensuite dépend fortement de votre configuration individuelle, comme les règles réseau. Pour des raisons de sécurité et de gestion des attentes, vous devez en particulier concevoir la gestion des droits selon le principe du moindre privilège et n’autoriser que les accès réellement nécessaires à vos automatisations.

## Étape 1 : trouver le serveur adapté

OpenClaw n’est pas simplement un chatbot, mais un outil autonome qui fonctionne sur votre serveur et interagit avec des programmes, des messageries et des services. Par exemple, vous pouvez utiliser le logiciel pour gérer des calendriers, administrer des fichiers et envoyer des notifications. Il est également possible de déclencher des automatisations ou d’exécuter des workflows complets de développement via API ou webhooks.

Pour la plupart des cas d’usage, les **configurations VPS** sont particulièrement recommandées, car elles offrent une base à la fois économique et performante pour la combinaison OpenClaw / Docker. C’est encore plus pratique si l’hébergement VPS peut s’appuyer sur l’**automatisation n8n**, car la connexion de Docker et OpenClaw à d’autres outils en est d’autant facilitée. En règle générale, plus vos tâches sont exigeantes, plus vous devez prévoir de [RAM](https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-quune-memoire-vive/) et de [CPU](https://www.ionos.fr/digitalguide/serveur/know-how/cpu/). Docker Compose et les modèles d’IA consomment de la mémoire pour les images, les journaux des conteneurs et la persistance des données. De manière générale, les ressources nécessaires dépendent aussi fortement de la **charge de travail** et du fait que vous utilisiez un **LLM Cloud** ou que vous exécutiez les **modèles en local**. Le tableau ci-dessous vous propose, à titre indicatif, quelques cas d’usage exemplaires et la puissance VPS recommandée.

<table>
  <thead>
    <tr>
      <th>Cas d’usage</th>
      <th>Fonctions principales</th>
      <th>Ressources VPS recommandées</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Assistant numérique du quotidien</td>
      <td>Synthèses de rendez-vous, messages, calendrier</td>
      <td>4 vCores CPU, 4 Go de RAM, 120 Go d’espace disque</td>
    </tr>
    <tr>
      <td>Automatisation de workflows et documentation</td>
      <td>Créer des documents, traiter des données, upload de fichiers</td>
      <td>6 vCores CPU, 8 Go de RAM, 240 Go d’espace disque</td>
    </tr>
    <tr>
      <td>Productivité développeur et automatisation à distance</td>
      <td>Tests, builds, logs, tâches shell</td>
      <td>8 vCores CPU, 16 Go de RAM, 480 Go d’espace disque</td>
    </tr>
  </tbody>
</table>

## Étape 2 : installer le système d’exploitation et établir une connexion sécurisée

Avant de pouvoir installer des logiciels comme OpenClaw avec Docker Compose, vous avez besoin d’un système d’exploitation sur votre serveur. Pour la configuration d’OpenClaw avec Docker, une [distribution Linux](https://www.ionos.fr/digitalguide/serveur/configuration/les-distributions-linux/) comme Ubuntu Server est particulièrement adaptée. Installez donc une **version Ubuntu récente** sur votre VPS, puis établissez une **connexion sécurisée à votre serveur**, par exemple via [SSH (Secure Shell)](https://www.ionos.fr/digitalguide/serveur/outils/protocole-ssh/). Veillez à utiliser des [accès SSH avec clés](https://www.ionos.fr/digitalguide/serveur/securite/generer-des-cles-ssh-pour-votre-connexion-reseau/) plutôt que des mots de passe, afin de protéger votre serveur contre les accès non autorisés.

Note Ce tutoriel présente un setup standard fonctionnel pour des environnements de test et de développement. N’utilisez pas la configuration par défaut telle quelle publiquement sur Internet. Pour les systèmes de production, vous devez mettre en œuvre des mesures de durcissement supplémentaires, comme la sécurisation [TLS](https://www.ionos.fr/digitalguide/serveur/securite/tls-transport-layer-security/)/[HTTPS](https://www.ionos.fr/digitalguide/hebergement/aspects-techniques/le-https-cest-quoi/) via un reverse proxy, une gestion centralisée des secrets, l’isolation réseau et des règles de pare-feu, ainsi que le monitoring, les alertes et des sauvegardes régulières des données et des configurations.

## Étape 3 : installer Docker Compose

Dès que vous avez établi une connexion sécurisée au serveur et configuré le système d’exploitation souhaité, vous pouvez [installer Docker Compose](https://www.ionos.fr/digitalguide/serveur/configuration/docker-compose-sous-ubuntu/). Pour cela, vous devez d’abord mettre le système à jour :

```bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg lsb-release
```

Ensuite, ajoutez la clé GPG de Docker et configurez le dépôt :

```bash
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
    "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
    $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
```

Mettez de nouveau à jour la liste des paquets, puis installez le moteur Docker, la CLI Docker (interface en ligne de commande) ainsi que le service « containerd » :

```bash
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
```

Lors de la dernière étape, installez Docker Compose. De nombreux nouveaux systèmes peuvent pour cela s’appuyer sur le système de plugins :

```bash
sudo apt install -y docker-compose-plugin
```

Vous pouvez aussi télécharger manuellement les fichiers d’installation :

```bash
mkdir -p ~/.docker/cli-plugins
curl -SL https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64 \
    -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
```

Vous pouvez vérifier le succès de l’installation avec la commande suivante :

```bash
docker --version
docker compose version
```

## Étape 4 : cloner le dépôt OpenClaw

Récupérez maintenant le code source d’OpenClaw, qui contient également la **configuration Docker requise** :

```bash
sudo apt install git -y
git clone https://github.com/openclaw/openclaw.git
cd openclaw
```

Vous voyez ensuite, entre autres, un fichier nommé « docker-setup.sh » (script de configuration) et le fichier « docker-compose.yml », qui décrit les conteneurs standard. Dans ce dernier fichier de configuration [YAML](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/quest-ce-que-yaml/), sont consignées les informations suivantes :

- `openclaw-gateway` : le service principal qui lance OpenClaw avec Docker
- `env_file` : cette information indique au conteneur où se trouvent les variables d’environnement
- `volumes` : cette entrée garantit que vos données sont stockées de manière persistante au lieu d’être perdues dans le conteneur
- `ports` : le port 18789 doit être ouvert afin que vous puissiez y accéder plus tard dans le navigateur

## Étape 5 : créer les variables d’environnement et saisir les clés API

Pour qu’OpenClaw sache quel fournisseur d’IA utiliser, comment communiquer avec des services externes et comment s’authentifier, vous devez définir quelques paramètres importants dans un fichier **.env**. Il s’agit d’un simple fichier texte dans lequel figurent des éléments sensibles comme les [clés API](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/api-key/) et les tokens ; ils ne doivent jamais être rendus publics, surtout dans les [dépôts](https://www.ionos.fr/digitalguide/serveur/know-how/referentiel/). Protégez en plus le fichier .env avec des droits d’accès restrictifs à l’aide de la commande `chmod 600 .env`.

**Comment créer le fichier .env ?**

1. Copiez le fichier d’exemple déjà présent dans le dépôt avec la commande suivante : `cp .env.example .env`.
2. Ouvrez le nouveau fichier pour le modifier avec la commande suivante : `nano .env`.
3. Vous voyez maintenant de nombreux espaces réservés possibles. Les lignes les plus importantes que vous devriez modifier dans ce fichier sont les suivantes (les valeurs sont données à titre d’exemple) :

```txt
LLM_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ihrapikey123xyz
GATEWAY_TOKEN=my_secure_gateway_token_abc
MODEL_VERSION=claude-4-5-sonnet-20260101
```

`LLM_PROVIDER` définit quel fournisseur d’IA vous souhaitez utiliser. Anthropic est en quelque sorte le standard recommandé, mais vous pouvez bien entendu choisir n’importe quel autre fournisseur. Les clés API correspondantes sont nécessaires pour qu’OpenClaw aient accès aux LLM dans le Cloud. `GATEWAY_TOKEN` sécurise l’accès au tableau de bord et, avec `MODEL_VERSION`, vous indiquez enfin la version souhaitée du modèle d’IA, par exemple Claude 4.5. Les noms de fournisseurs et les versions de modèles changent fréquemment, c’est pourquoi les valeurs utilisées ici ne servent qu’à titre d’exemple. Référez-vous toujours à la documentation la plus récente de votre fournisseur.

Note Pour des environnements de production, les [Docker secrets](https://docs.docker.com/engine/swarm/secrets/ "Manage sensitive data with Docker secrets | Docker Docs") ou un [gestionnaire de mots de passe](https://www.ionos.fr/digitalguide/serveur/securite/gestionnaires-de-mot-de-passe-selection-des-meilleurs-outils/) sont souvent un meilleur choix que de stocker des clés en clair dans des fichiers texte.

## Étape 6 : exécuter le script de configuration

Après avoir cloné le dépôt OpenClaw avec Docker, vous y trouverez, comme déjà mentionné, un fichier nommé « docker-setup.sh ». Ce fichier est un **script de configuration** qui automatise de nombreuses tâches que vous devriez autrement effectuer manuellement. Il fait partie de la documentation officielle du projet. Sans ce script, vous devriez vous‑même :

- Construire les images Docker
- Adapter les configurations Docker Compose
- Saisir les variables d’environnement (si vous ne l’avez pas fait manuellement comme décrit à l’étape 5)
- Démarrer les conteneurs

Le script de configuration vous évite ce travail et veille à ce que les conteneurs soient correctement installés et configurés. Pour vérifier au préalable ce que fait exactement le script, vous pouvez exécuter la commande `less docker-setup.sh`. Si vous pouvez suivre les modifications, lancez‑le avec la commande suivante dans le terminal :

```bash
./docker-setup.sh
```

Pendant l’installation, il vous sera demandé de manière interactive de choisir des options de configuration (mode passerelle, fournisseur, tokens). Répondez aux questions selon vos préférences afin de finaliser la mise en place d’OpenClaw avec Docker.

## Étape 7 : démarrer Docker Compose

Lorsque les fichiers Compose sont prêts, démarrez tous les services. Avec la commande suivante, vous téléchargez les images, lancez les conteneurs concernés et montez automatiquement les volumes nécessaires :

```bash
docker compose up -d
```

Pour vous assurer qu’aucune erreur ne survient et que tous les services ont bien démarré et fonctionnent correctement, activez simplement la fonction de journalisation afin de consulter les logs en temps réel :

```bash
docker compose logs -f
```

Conseil La fonction de journalisation est également importante plus tard, en phase d’exploitation de votre installation OpenClaw avec Docker. De cette manière, vous surveillez durablement les ressources (CPU/RAM/disque) et les taux d’erreur !

## Étape 8 : accéder à l’interface Web

Dès que tout fonctionne, vous pouvez accéder à l’**interface d’administration Web** dans votre navigateur en appelant l’URL `http://VOTRE_SERVEUR_IP:18789`. Remplacez pour cela la partie `VOTRE_SERVEUR_IP` par l’[adresse IP](https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-quune-adresse-ip/) de votre serveur. Via le tableau de bord OpenClaw, vous pouvez désormais :

- Démarrer des conversations de chat
- Configurer vos agents
- Créer des tokens d’appairage pour les clients et appareils

Si des messages d’erreur tels que « Unauthorized » ou « Pairing required » apparaissent dans le navigateur, générez simplement un nouveau token de tableau de bord avec la commande suivante :

```bash
docker compose run --rm openclaw-cli dashboard --no-open
```

Ensuite, validez le processus comme suit :

```bash
docker compose run --rm openclaw-cli devices list
docker compose run --rm openclaw-cli devices approve <requestID>
```

Conseil Le conteneur ne démarre pas ? Inspectez les logs avec `docker compose logs -f` pour identifier le problème ou vérifiez le fichier .env afin de repérer des clés manquantes ou des fautes de frappe. Si le port n’est pas accessible, il est probable que vous deviez ajuster les paramètres du pare-feu ou des groupes de sécurité.

## Étape 9 : sécuriser l’instance OpenClaw

OpenClaw peut intervenir en profondeur dans le système et exécuter des tâches. Cela signifie que, s’il fonctionne sans protection sur Internet, n’importe quelle personne pourrait, en principe, y accéder. Pour cette raison, respectez les règles de sécurité suivantes :

- Protégez votre serveur avec un [pare-feu](https://www.ionos.fr/digitalguide/serveur/securite/quest-ce-quun-pare-feu/). Seules les **connexions nécessaires** doivent être autorisées.
- N’ouvrez le **port OpenClaw** (par défaut 18789) que si nécessaire. Si vous souhaitez autoriser un accès public, limitez-le de préférence à des adresses IP de confiance et imposez la connexion via un [reverse proxy](https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-quun-reverse-proxy-le-serveur-reverse-proxy/) avec HTTPS ou un [VPN](https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-quun-vpn-virtual-private-network/).
- Sécurisez vos conteneurs de manière ciblée en les lançant si possible **sans droits root**, en utilisant des systèmes de fichiers en mode `read-only` et en supprimant les autorisations inutiles. Évitez les montages de volumes hôtes superflus et limitez l’accès réseau aux seules cibles nécessaires, comme les API de messagerie et les fournisseurs de LLM.
- Utilisez l’**authentification basée sur des tokens**. Le `GATEWAY_TOKEN` que vous avez défini dans le fichier .env sert à empêcher les accès non autorisés.
- Si l’image le permet, veillez à **ne pas exécuter OpenClaw en tant que root à l’intérieur du conteneur** et à restreindre les autorisations à l’aide d’options (flags) comme `--read-only`, `--cap-drop=ALL` et `--security-opt=no-new-privileges`, afin de réduire les potentielles surfaces d’attaque.
- Créez un **environnement réseau Docker isolé** ou utilisez des règles permettant à OpenClaw d’atteindre uniquement les services externes réellement nécessaires (par ex. des API de fournisseurs d’IA), plutôt que de disposer d’un accès illimité à Internet.
- Veillez à appliquer les **bons réglages dans la configuration de sécurité d’OpenClaw**. Tous les mécanismes d’authentification doivent être activés et toutes les règles du gateway pour l’environnement de production correctement définies.

Sur des systèmes Linux comme Ubuntu, vous pouvez activer rapidement une bonne protection de base à l’aide de l’Uncomplicated Firewall (ufw). Remplacez ici`<IP_AUTORISÉE>` par l’adresse IP publique à partir de laquelle vous souhaitez accéder à l’interface.

```bash
sudo ufw allow 22/tcp
sudo ufw allow from <IP_AUTORISÉE> to any port 18789 proto tcp
sudo ufw enable
```

En ouvrant le port TCP 22, vous permettez un **accès SSH sécurisé**. Le port TCP 18789 est le **port standard pour OpenClaw**, sauf si vous avez défini un autre port. Si vous ne souhaitez pas ouvrir complètement ce port, vous pouvez aussi le limiter à certaines adresses IP.

Conseil Un exemple de configuration de connexion sécurisée est le suivant : vous utilisez un reverse proxy comme [NGINX](https://www.ionos.fr/digitalguide/serveur/configuration/nginx-bases-installation-et-configuration/), Traefik ou Caddy. Vous installez en complément un certificat TLS tel que le certificat gratuit [Let’s Encrypt](https://www.ionos.fr/digitalguide/sites-internet/creation-de-sites-internet/installer-un-certificat-ssl-lets-encrypt/). Vous redirigez ensuite en interne vers l’adresse `localhost:18789`. Lorsque c’est possible, il est également recommandé de configurer une limitation de débit pour restreindre le nombre de requêtes, ainsi que Basic-Auth/OIDC pour renforcer l’authentification.

## Étape 10 : configurer les intégrations de messagerie

OpenClaw peut se connecter à différentes **plateformes de chat** tels que Slack, WhatsApp, Telegram et bien d’autres. Vous pouvez ainsi piloter votre agent IA directement depuis votre chat de travail. Par exemple, si vous connectez OpenClaw à Slack, votre agent IA agit comme un bot Slack. Vous pouvez alors lui poser des questions ou lui envoyer des tâches dans le chat d’équipe, et il répond ou exécute des actions.

L’**intégration** fonctionne globalement de la manière suivante (il peut y avoir de légères différences de configuration selon l’intégration) :

1. **Bot / application enregistrer :** créez un bot ou une application dans le service concerné (par ex. Telegram, Slack, Discord). En général, cela se fait via le portail développeurs du service. À la fin, vous obtenez un ou plusieurs tokens/clefs d’API permettant d’authentifier votre bot.
2. **Tokens / clefs saisir dans OpenClaw :** saisissez les identifiants d’accès à l’API (par ex. `TELEGRAM_BOT_TOKEN`, `SLACK_BOT_TOKEN`) dans le fichier de configuration .env d’OpenClaw ou dans une interface de configuration appropriée.
3. **Redémarrer ou configurer OpenClaw :** redémarrez OpenClaw afin qu’il puisse prendre en compte les nouveaux réglages d’intégration.
4. **Appairage / authentification :** selon le service, vous devez autoriser une fois le bot ou la connexion, par exemple via des codes d’appairage, des flux OAuth ou des liens de confirmation fournis par le service ou affichés par OpenClaw.
5. **Tester :** envoyez un message de test via le bot ou le chat afin de vérifier qu’OpenClaw réagit correctement.

Conseil Traitez les tokens d’API de façon confidentielle, n’accordez que les autorisations nécessaires, testez la connexion immédiatement après la configuration et terminez entièrement la procédure d’autorisation (par ex. appairage/OAuth). En cas de problème, vérifiez les logs et utilisez de préférence un channel ou workspace privé pour les premiers tests.

## Étape 11 : garder OpenClaw à jour

Pour pouvoir toujours utiliser les dernières fonctionnalités de l’outil et bénéficier des correctifs de bugs ainsi que des mises à jour de sécurité, il est important de mettre régulièrement OpenClaw à jour. Pour cela, commencez par ouvrir le répertoire :

```bash
cd ~/openclaw
```

Ensuite, récupérez la dernière version avec la commande suivante :

```bash
git pull
docker compose pull
```

Redémarrez ensuite votre instance Docker OpenClaw :

```bash
docker compose up -d
```

Conseil Planifiez des [sauvegardes](https://www.ionos.fr/digitalguide/serveur/securite/quest-ce-quune-sauvegarde/) des volumes persistants (configuration, tokens, données pertinentes) afin de disposer, en cas de besoin, de copies de sécurité pour restaurer vos projets.


This is a markdown version of: [https://www.ionos.fr/digitalguide/serveur/configuration/openclaw-avec-docker/](https://www.ionos.fr/digitalguide/serveur/configuration/openclaw-avec-docker/) for AI/LLM consumption.