Hosting
GCP
Führen Sie ein dauerhaft laufendes OpenClaw Gateway auf einer GCP Compute Engine-VM mit Docker aus, mit dauerhaftem Zustand, integrierten Binärdateien und sicherem Neustartverhalten.
Wenn Sie „OpenClaw 24/7 für ca. 5-12 USD/Monat“ möchten, ist dies eine zuverlässige Einrichtung auf Google Cloud. Die Preise variieren je nach Maschinentyp und Region; wählen Sie die kleinste VM, die zu Ihrer Workload passt, und skalieren Sie nach oben, wenn OOMs auftreten.
Was machen wir (einfach erklärt)?
- Ein GCP-Projekt erstellen und Abrechnung aktivieren
- Eine Compute Engine-VM erstellen
- Docker installieren (isolierte App-Laufzeitumgebung)
- Das OpenClaw Gateway in Docker starten
~/.openclaw+~/.openclaw/workspaceauf dem Host dauerhaft speichern (übersteht Neustarts/Neuaufbauten)- Über einen SSH-Tunnel von Ihrem Laptop auf die Control UI zugreifen
Dieser eingehängte Zustand ~/.openclaw enthält openclaw.json, agentenspezifische
agents/<agentId>/agent/auth-profiles.json und .env.
Auf das Gateway kann zugegriffen werden über:
- SSH-Portweiterleitung von Ihrem Laptop
- Direkte Portfreigabe, wenn Sie Firewalling und Tokens selbst verwalten
Diese Anleitung verwendet Debian auf GCP Compute Engine. Ubuntu funktioniert ebenfalls; ordnen Sie die Pakete entsprechend zu. Den generischen Docker-Ablauf finden Sie unter Docker.
Schnellweg (erfahrene Betreiber)
- GCP-Projekt erstellen + Compute Engine API aktivieren
- Compute Engine-VM erstellen (e2-small, Debian 12, 20 GB)
- Per SSH mit der VM verbinden
- Docker installieren
- OpenClaw-Repository klonen
- Dauerhafte Host-Verzeichnisse erstellen
.envunddocker-compose.ymlkonfigurieren- Erforderliche Binärdateien integrieren, bauen und starten
Was Sie benötigen
- GCP-Konto (für e2-micro im Free Tier geeignet)
- Installierte gcloud CLI (oder Cloud Console verwenden)
- SSH-Zugriff von Ihrem Laptop
- Grundlegende Vertrautheit mit SSH + Kopieren/Einfügen
- ca. 20-30 Minuten
- Docker und Docker Compose
- Modell-Authentifizierungsdaten
- Optionale Provider-Zugangsdaten
- WhatsApp-QR
- Telegram-Bot-Token
- Gmail-OAuth
gcloud CLI installieren (oder Console verwenden)
Option A: gcloud CLI (für Automatisierung empfohlen)
Installieren Sie von https://cloud.google.com/sdk/docs/install
Initialisieren und authentifizieren:
gcloud init
gcloud auth login
Option B: Cloud Console
Alle Schritte können über die Web-UI unter https://console.cloud.google.com durchgeführt werden
Ein GCP-Projekt erstellen
CLI:
gcloud projects create my-openclaw-project --name="OpenClaw Gateway"
gcloud config set project my-openclaw-project
Aktivieren Sie die Abrechnung unter https://console.cloud.google.com/billing (für Compute Engine erforderlich).
Aktivieren Sie die Compute Engine API:
gcloud services enable compute.googleapis.com
Console:
- Gehen Sie zu IAM & Admin > Create Project
- Geben Sie einen Namen ein und erstellen Sie es
- Aktivieren Sie die Abrechnung für das Projekt
- Navigieren Sie zu APIs & Services > Enable APIs > suchen Sie nach „Compute Engine API“ > Enable
Die VM erstellen
Maschinentypen:
| Typ | Spezifikationen | Kosten | Hinweise |
|---|---|---|---|
| e2-medium | 2 vCPU, 4 GB RAM | ca. 25 USD/Monat | Am zuverlässigsten für lokale Docker-Builds |
| e2-small | 2 vCPU, 2 GB RAM | ca. 12 USD/Monat | Empfohlenes Minimum für Docker-Builds |
| e2-micro | 2 vCPU (geteilt), 1 GB RAM | Free-Tier-fähig | Schlägt oft mit Docker-Build-OOM fehl (exit 137) |
CLI:
gcloud compute instances create openclaw-gateway \
--zone=us-central1-a \
--machine-type=e2-small \
--boot-disk-size=20GB \
--image-family=debian-12 \
--image-project=debian-cloud
Console:
- Gehen Sie zu Compute Engine > VM instances > Create instance
- Name:
openclaw-gateway - Region:
us-central1, Zone:us-central1-a - Maschinentyp:
e2-small - Boot-Datenträger: Debian 12, 20 GB
- Erstellen
Per SSH mit der VM verbinden
CLI:
gcloud compute ssh openclaw-gateway --zone=us-central1-a
Console:
Klicken Sie im Compute Engine-Dashboard neben Ihrer VM auf die Schaltfläche „SSH“.
Hinweis: Die Verteilung von SSH-Schlüsseln kann nach der VM-Erstellung 1-2 Minuten dauern. Wenn die Verbindung abgelehnt wird, warten Sie und versuchen Sie es erneut.
Docker installieren (auf der VM)
sudo apt-get update
sudo apt-get install -y git curl ca-certificates
curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker $USER
Melden Sie sich ab und wieder an, damit die Gruppenänderung wirksam wird:
exit
Verbinden Sie sich dann erneut per SSH:
gcloud compute ssh openclaw-gateway --zone=us-central1-a
Überprüfen:
docker --version
docker compose version
Das OpenClaw-Repository klonen
git clone https://github.com/openclaw/openclaw.git
cd openclaw
Diese Anleitung geht davon aus, dass Sie ein eigenes Image bauen, um die dauerhafte Verfügbarkeit der Binärdateien zu garantieren.
Dauerhafte Host-Verzeichnisse erstellen
Docker-Container sind flüchtig. Jeder langlebige Zustand muss auf dem Host liegen.
mkdir -p ~/.openclaw
mkdir -p ~/.openclaw/workspace
Umgebungsvariablen konfigurieren
Erstellen Sie .env im Repository-Root.
OPENCLAW_IMAGE=openclaw:latest
OPENCLAW_GATEWAY_TOKEN=
OPENCLAW_GATEWAY_BIND=lan
OPENCLAW_GATEWAY_PORT=18789
OPENCLAW_CONFIG_DIR=/home/$USER/.openclaw
OPENCLAW_WORKSPACE_DIR=/home/$USER/.openclaw/workspace
GOG_KEYRING_PASSWORD=
XDG_CONFIG_HOME=/home/node/.openclaw
Setzen Sie OPENCLAW_GATEWAY_TOKEN, wenn Sie den stabilen Gateway-Token
über .env verwalten möchten; andernfalls konfigurieren Sie gateway.auth.token,
bevor Sie sich über Neustarts hinweg auf Clients verlassen. Wenn keine der
beiden Quellen vorhanden ist, verwendet OpenClaw für diesen Start einen
rein laufzeitgebundenen Token. Generieren Sie ein Keyring-Passwort und fügen
Sie es in GOG_KEYRING_PASSWORD ein:
openssl rand -hex 32
Committen Sie diese Datei nicht.
Diese .env-Datei ist für Container-/Laufzeitumgebungsvariablen wie OPENCLAW_GATEWAY_TOKEN.
Gespeicherte Provider-OAuth-/API-Schlüssel-Authentifizierung liegt in der eingehängten Datei
~/.openclaw/agents/<agentId>/agent/auth-profiles.json.
Docker Compose-Konfiguration
Erstellen oder aktualisieren Sie docker-compose.yml.
services:
openclaw-gateway:
image: ${OPENCLAW_IMAGE}
build: .
restart: unless-stopped
env_file:
- .env
environment:
- HOME=/home/node
- NODE_ENV=production
- TERM=xterm-256color
- OPENCLAW_GATEWAY_BIND=${OPENCLAW_GATEWAY_BIND}
- OPENCLAW_GATEWAY_PORT=${OPENCLAW_GATEWAY_PORT}
- OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN}
- GOG_KEYRING_PASSWORD=${GOG_KEYRING_PASSWORD}
- XDG_CONFIG_HOME=${XDG_CONFIG_HOME}
- PATH=/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
volumes:
- ${OPENCLAW_CONFIG_DIR}:/home/node/.openclaw
- ${OPENCLAW_WORKSPACE_DIR}:/home/node/.openclaw/workspace
ports:
# Recommended: keep the Gateway loopback-only on the VM; access via SSH tunnel.
# To expose it publicly, remove the `127.0.0.1:` prefix and firewall accordingly.
- "127.0.0.1:${OPENCLAW_GATEWAY_PORT}:18789"
command:
[
"node",
"dist/index.js",
"gateway",
"--bind",
"${OPENCLAW_GATEWAY_BIND}",
"--port",
"${OPENCLAW_GATEWAY_PORT}",
"--allow-unconfigured",
]
--allow-unconfigured dient nur der bequemen Ersteinrichtung und ersetzt keine ordnungsgemäße Gateway-Konfiguration. Setzen Sie trotzdem Authentifizierung (gateway.auth.token oder Passwort) und verwenden Sie sichere Bind-Einstellungen für Ihr Deployment.
Gemeinsame Docker-VM-Laufzeitschritte
Verwenden Sie die gemeinsame Laufzeitanleitung für den allgemeinen Docker-Host-Ablauf:
GCP-spezifische Starthinweise
Wenn der Build auf GCP während pnpm install --frozen-lockfile mit Killed oder exit code 137 fehlschlägt, hat die VM nicht genug Arbeitsspeicher. Verwenden Sie mindestens e2-small oder e2-medium für zuverlässigere erste Builds.
Wenn Sie an das LAN binden (OPENCLAW_GATEWAY_BIND=lan), konfigurieren Sie einen vertrauenswürdigen Browser-Origin, bevor Sie fortfahren:
docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins '["http://127.0.0.1:18789"]' --strict-json
Wenn Sie den Gateway-Port geändert haben, ersetzen Sie 18789 durch Ihren konfigurierten Port.
Zugriff von Ihrem Laptop
Erstellen Sie einen SSH-Tunnel, um den Gateway-Port weiterzuleiten:
gcloud compute ssh openclaw-gateway --zone=us-central1-a -- -L 18789:127.0.0.1:18789
Öffnen Sie dies in Ihrem Browser:
http://127.0.0.1:18789/
Geben Sie einen sauberen Dashboard-Link erneut aus:
docker compose run --rm openclaw-cli dashboard --no-open
Wenn die UI zur Shared-Secret-Authentifizierung auffordert, fügen Sie den konfigurierten Token oder das Passwort in den Control UI-Einstellungen ein. Dieser Docker-Ablauf schreibt standardmäßig einen Token; wenn Sie die Container-Konfiguration auf Passwortauthentifizierung umstellen, verwenden Sie stattdessen dieses Passwort.
Wenn die Control UI unauthorized oder disconnected (1008): pairing required anzeigt, genehmigen Sie das Browsergerät:
docker compose run --rm openclaw-cli devices list
docker compose run --rm openclaw-cli devices approve <requestId>
Benötigen Sie die Referenz zu gemeinsamer Persistenz und Updates erneut? Siehe Docker-VM-Laufzeit und Docker-VM-Laufzeit-Updates.
Fehlerbehebung
SSH-Verbindung abgelehnt
Die Verteilung von SSH-Schlüsseln kann nach der VM-Erstellung 1-2 Minuten dauern. Warten Sie und versuchen Sie es erneut.
Probleme mit OS Login
Prüfen Sie Ihr OS Login-Profil:
gcloud compute os-login describe-profile
Stellen Sie sicher, dass Ihr Konto über die erforderlichen IAM-Berechtigungen verfügt (Compute OS Login oder Compute OS Admin Login).
Nicht genügend Arbeitsspeicher (OOM)
Wenn der Docker-Build mit Killed und exit code 137 fehlschlägt, wurde die VM wegen OOM beendet. Führen Sie ein Upgrade auf e2-small (Minimum) oder e2-medium (für zuverlässige lokale Builds empfohlen) durch:
# Stop the VM first
gcloud compute instances stop openclaw-gateway --zone=us-central1-a
# Change machine type
gcloud compute instances set-machine-type openclaw-gateway \
--zone=us-central1-a \
--machine-type=e2-small
# Start the VM
gcloud compute instances start openclaw-gateway --zone=us-central1-a
Dienstkonten (bewährte Sicherheitsmethode)
Für die persönliche Nutzung funktioniert Ihr Standard-Benutzerkonto problemlos.
Für Automatisierung oder CI/CD-Pipelines erstellen Sie ein dediziertes Dienstkonto mit minimalen Berechtigungen:
-
Erstellen Sie ein Dienstkonto:
gcloud iam service-accounts create openclaw-deploy \ --display-name="OpenClaw Deployment" -
Gewähren Sie die Rolle Compute Instance Admin (oder eine enger gefasste benutzerdefinierte Rolle):
gcloud projects add-iam-policy-binding my-openclaw-project \ --member="serviceAccount:[email protected]" \ --role="roles/compute.instanceAdmin.v1"
Vermeiden Sie die Verwendung der Owner-Rolle für Automatisierung. Verwenden Sie das Prinzip der geringsten Berechtigung.
Details zu IAM-Rollen finden Sie unter https://cloud.google.com/iam/docs/understanding-roles.
Nächste Schritte
- Messaging-Kanäle einrichten: Channels
- Lokale Geräte als Nodes koppeln: Nodes
- Gateway konfigurieren: Gateway-Konfiguration