Autres méthodes d'installation
Docker
Docker est optionnel. Utilisez-le uniquement si vous voulez une passerelle conteneurisée ou pour valider le flux Docker.
Docker est-il fait pour moi ?
- Oui : vous voulez un environnement de passerelle isolé et jetable ou exécuter OpenClaw sur un hôte sans installations locales.
- Non : vous exécutez sur votre propre machine et voulez juste la boucle de développement la plus rapide. Utilisez plutôt le flux d'installation normal.
- Note sur le bac à sable : le bac à sable des agents utilise aussi Docker, mais il ne nécessite pas que la passerelle complète s'exécute dans Docker. Voir Bac à sable.
Ce guide couvre :
- Passerelle conteneurisée (OpenClaw complet dans Docker)
- Bac à sable par session pour les agents (passerelle hôte + outils d'agent isolés par Docker)
Détails sur le bac à sable : Bac à sable
Prérequis
- Docker Desktop (ou Docker Engine) + Docker Compose v2
- Au moins 2 Go de RAM pour la construction de l'image (
pnpm installpeut être tué par manque de mémoire sur des hôtes de 1 Go avec le code de sortie 137) - Suffisamment d'espace disque pour les images + logs
- Si vous exécutez sur un VPS/hôte public, consultez Renforcement de la sécurité pour l'exposition réseau, en particulier la politique de pare-feu Docker
DOCKER-USER.
Passerelle conteneurisée (Docker Compose)
Démarrage rapide (recommandé)
ℹ️ Les valeurs par défaut Docker ici supposent des modes de liaison (
lan/loopback), pas des alias d'hôte. Utilisez les valeurs de mode de liaison dansgateway.bind(par exemplelanouloopback), pas des alias d'hôte comme0.0.0.0oulocalhost.
Depuis la racine du dépôt :
./docker-setup.sh
Ce script :
- construit l'image de la passerelle localement (ou tire une image distante si
OPENCLAW_IMAGEest défini) - exécute l'assistant de configuration initiale
- affiche des conseils optionnels pour la configuration des fournisseurs
- démarre la passerelle via Docker Compose
- génère un jeton de passerelle et l'écrit dans
.env
Variables d'environnement optionnelles :
OPENCLAW_IMAGE— utiliser une image distante au lieu de construire localement (par ex.ghcr.io/openclaw/openclaw:latest)OPENCLAW_DOCKER_APT_PACKAGES— installer des paquets apt supplémentaires pendant la constructionOPENCLAW_EXTENSIONS— pré-installer les dépendances des extensions au moment de la construction (noms d'extensions séparés par des espaces, par ex.diagnostics-otel matrix)OPENCLAW_EXTRA_MOUNTS— ajouter des montages de liaison hôte supplémentairesOPENCLAW_HOME_VOLUME— persister/home/nodedans un volume nomméOPENCLAW_SANDBOX— activer l'amorçage du bac à sable Docker de la passerelle. Seules les valeurs explicitement vraies l'activent :1,true,yes,onOPENCLAW_INSTALL_DOCKER_CLI— argument de construction transmis pour les constructions d'image locales (1installe Docker CLI dans l'image).docker-setup.shdéfinit ceci automatiquement quandOPENCLAW_SANDBOX=1pour les constructions locales.OPENCLAW_DOCKER_SOCKET— remplacer le chemin du socket Docker (par défaut : cheminDOCKER_HOST=unix://..., sinon/var/run/docker.sock)OPENCLAW_ALLOW_INSECURE_PRIVATE_WS=1— solution de secours : autoriser les ciblesws://de réseau privé de confiance pour les chemins client CLI/configuration initiale (par défaut uniquement en boucle locale)OPENCLAW_BROWSER_DISABLE_GRAPHICS_FLAGS=0— désactiver les drapeaux de durcissement du navigateur en conteneur--disable-3d-apis,--disable-software-rasterizer,--disable-gpuquand vous avez besoin de compatibilité WebGL/3D.OPENCLAW_BROWSER_DISABLE_EXTENSIONS=0— garder les extensions activées quand les flux navigateur les nécessitent (par défaut, les extensions sont désactivées dans le navigateur du bac à sable).OPENCLAW_BROWSER_RENDERER_PROCESS_LIMIT=— définir la limite de processus de rendu Chromium ; définir à0pour ignorer le drapeau et utiliser le comportement par défaut de Chromium.
Une fois terminé :
- Ouvrez
http://127.0.0.1:18789/dans votre navigateur. - Collez le jeton dans l'interface de contrôle (Paramètres → jeton).
- Besoin de l'URL à nouveau ? Exécutez
docker compose run --rm openclaw-cli dashboard --no-open.
Activer le bac à sable des agents pour la passerelle Docker (opt-in)
docker-setup.sh peut aussi amorcer agents.defaults.sandbox.* pour les déploiements Docker. Activez avec :
export OPENCLAW_SANDBOX=1
./docker-setup.sh
Chemin de socket personnalisé (par exemple Docker rootless) :
export OPENCLAW_SANDBOX=1
export OPENCLAW_DOCKER_SOCKET=/run/user/1000/docker.sock
./docker-setup.sh
Notes :
- Le script monte
docker.sockseulement après que les prérequis du bac à sable sont validés. - Si la configuration du bac à sable ne peut pas être terminée, le script réinitialise
agents.defaults.sandbox.modeàoffpour éviter une configuration de bac à sable obsolète/cassée lors des ré-exécutions. - Si
Dockerfile.sandboxest manquant, le script affiche un avertissement et continue ; construisezopenclaw-sandbox:bookworm-slimavecscripts/sandbox-setup.shsi nécessaire. - Pour les valeurs
OPENCLAW_IMAGEnon locales, l'image doit déjà contenir le support Docker CLI pour l'exécution du bac à sable.
Automatisation/CI (non interactif, pas de bruit TTY)
Pour les scripts et l'intégration continue, désactivez l'allocation de pseudo-TTY de Compose avec -T :
docker compose run -T --rm openclaw-cli gateway probe
docker compose run -T --rm openclaw-cli devices list --json
Si votre automatisation n'exporte pas de variables de session Claude, les laisser non définies se résout maintenant à des valeurs vides par défaut dans docker-compose.yml pour éviter les avertissements répétés "variable non définie".
Note de sécurité réseau partagé (CLI + passerelle)
openclaw-cli utilise network_mode: "service:openclaw-gateway" pour que les commandes CLI puissent atteindre de manière fiable la passerelle via 127.0.0.1 dans Docker. Traitez ceci comme une limite de confiance partagée : la liaison en boucle locale n'est pas une isolation entre ces deux conteneurs. Si vous avez besoin d'une séparation plus forte, exécutez les commandes depuis un chemin réseau conteneur/hôte séparé au lieu du service groupé openclaw-cli. Pour réduire l'impact si le processus CLI est compromis, la configuration compose supprime NET_RAW/NET_ADMIN et active no-new-privileges sur openclaw-cli. Il écrit la configuration/l'espace de travail sur l'hôte :
~/.openclaw/~/.openclaw/workspace
Exécution sur un VPS ? Voir Hetzner (VPS Docker).
Utiliser une image distante (ignorer la construction locale)
Les images pré-construites officielles sont publiées à :
Utilisez le nom d'image ghcr.io/openclaw/openclaw (pas les images Docker Hub de nom similaire). Étiquettes courantes :
main— dernière construction depuismain- `` — constructions d'étiquette de version (par exemple
2026.2.26) latest— dernière étiquette de version stable