Hosting
GCP
Führen Sie einen persistenten OpenClaw Gateway auf einer GCP-Compute-Engine-VM mit Docker aus – mit dauerhaftem Zustand, fest in das Image integrierten Binärdateien und sicherem Neustartverhalten.
Die Preise variieren je nach Maschinentyp und Region. Wählen Sie die kleinste VM, die für Ihre Arbeitslast ausreicht, und skalieren Sie sie hoch, wenn Fehler wegen Speichermangels auftreten.
Auf den Gateway können Sie von Ihrem Laptop aus über SSH-Portweiterleitung zugreifen oder über eine direkte Portfreigabe, wenn Sie Firewallregeln und Token selbst verwalten.
Diese Anleitung verwendet Debian auf GCP Compute Engine. Ubuntu funktioniert ebenfalls; passen Sie die Pakete entsprechend an. Den allgemeinen Docker-Ablauf finden Sie unter Docker.
Voraussetzungen
- GCP-Konto (
e2-microist für das kostenlose Kontingent berechtigt) gcloud-CLI oder die Cloud Console- SSH-Zugriff von Ihrem Laptop
- Docker und Docker Compose
- Anmeldedaten für die Modellauthentifizierung
- Optionale Provider-Anmeldedaten (WhatsApp-QR-Code, Telegram-Bot-Token, Gmail OAuth)
- Etwa 20–30 Minuten
Schnellstart
- Erstellen Sie ein GCP-Projekt und aktivieren Sie die Abrechnung sowie die Compute Engine API
- Erstellen Sie eine Compute-Engine-VM (
e2-small, Debian 12, 20 GB) - Stellen Sie per SSH eine Verbindung zur VM her und installieren Sie Docker
- Klonen Sie das OpenClaw-Repository
- Erstellen Sie persistente Verzeichnisse auf dem Host
- Konfigurieren Sie
.envunddocker-compose.yml - Integrieren Sie die erforderlichen Binärdateien in das Image, erstellen Sie es und starten Sie es
gcloud-CLI installieren (oder Console verwenden)
Installieren Sie sie über cloud.google.com/sdk/docs/install, und führen Sie anschließend Folgendes aus:
gcloud initgcloud auth loginAlternativ können Sie alle folgenden Schritte über die Weboberfläche der Cloud Console ausführen.
GCP-Projekt erstellen
gcloud projects create my-openclaw-project --name="OpenClaw Gateway"gcloud config set project my-openclaw-projectgcloud services enable compute.googleapis.comAktivieren Sie die Abrechnung unter console.cloud.google.com/billing (für Compute Engine erforderlich).
Entsprechender Ablauf in der Console: IAM & Admin > Create Project, Abrechnung aktivieren, anschließend APIs & Services > Enable APIs > "Compute Engine API" > Enable.
VM erstellen
| 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 einen Docker-Build |
| e2-micro | 2 vCPU (geteilt), 1 GB RAM | Für kostenloses Kontingent berechtigt | Scheitert bei Docker-Builds häufig wegen Speichermangels (Exit-Code 137) |
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-cloudPer SSH mit der VM verbinden
gcloud compute ssh openclaw-gateway --zone=us-central1-aConsole: Klicken Sie im Compute-Engine-Dashboard neben der VM auf "SSH".
Die Übertragung des SSH-Schlüssels kann nach dem Erstellen der VM 1–2 Minuten dauern. Warten Sie und versuchen Sie es erneut, wenn die Verbindung abgelehnt wird.
Docker installieren (auf der VM)
sudo apt-get updatesudo apt-get install -y git curl ca-certificatescurl -fsSL https://get.docker.com | sudo shsudo usermod -aG docker $USERMelden Sie sich ab und wieder an, damit die Gruppenänderung wirksam wird. Stellen Sie anschließend erneut eine SSH-Verbindung her:
exitgcloud compute ssh openclaw-gateway --zone=us-central1-aÜberprüfen Sie die Installation:
docker --versiondocker compose versionOpenClaw-Repository klonen
git clone https://github.com/openclaw/openclaw.gitcd openclawIn dieser Anleitung wird ein benutzerdefiniertes Image erstellt, damit alle darin integrierten Binärdateien Neustarts überstehen.
Persistente Hostverzeichnisse erstellen
Docker-Container sind flüchtig; alle dauerhaft benötigten Zustandsdaten müssen auf dem Host gespeichert werden.
mkdir -p ~/.openclawmkdir -p ~/.openclaw/workspaceUmgebungsvariablen konfigurieren
Erstellen Sie im Stammverzeichnis des Repositorys eine .env-Datei:
OPENCLAW_IMAGE=openclaw:latestOPENCLAW_GATEWAY_TOKEN=OPENCLAW_GATEWAY_BIND=lanOPENCLAW_GATEWAY_PORT=18789 OPENCLAW_CONFIG_DIR=/home/$USER/.openclawOPENCLAW_WORKSPACE_DIR=/home/$USER/.openclaw/workspace GOG_KEYRING_PASSWORD=XDG_CONFIG_HOME=/home/node/.openclawLegen Sie OPENCLAW_GATEWAY_TOKEN fest, um das stabile Gateway-Token über
.env zu verwalten. Andernfalls konfigurieren Sie gateway.auth.token,
bevor Sie sich darauf verlassen, dass Clients über Neustarts hinweg
funktionieren. Wenn keines von beiden festgelegt ist, verwendet OpenClaw
für diesen Start ein ausschließlich zur Laufzeit gültiges Token. Erzeugen
Sie ein Schlüsselbund-Passwort für GOG_KEYRING_PASSWORD:
openssl rand -hex 32Übertragen Sie diese Datei nicht in das Repository. Sie enthält
Umgebungsvariablen für Container und Laufzeit, beispielsweise
OPENCLAW_GATEWAY_TOKEN. Gespeicherte OAuth- und API-Schlüssel-
Authentifizierungsdaten der Provider befinden sich in der eingebundenen
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: # Empfohlen: Beschränken Sie den Gateway auf der VM auf Loopback; greifen Sie über einen SSH-Tunnel darauf zu. # Um ihn öffentlich verfügbar zu machen, entfernen Sie das Präfix `127.0.0.1:` und passen Sie die Firewall entsprechend an. - "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 bequemeren Ersteinrichtung und ersetzt keine ordnungsgemäße Gateway-Konfiguration. Legen Sie weiterhin die Authentifizierung (gateway.auth.token oder ein Passwort) sowie einen sicheren Bindungsmodus für Ihre Bereitstellung fest.
Gemeinsame Laufzeitschritte für Docker-VMs
Befolgen Sie für den allgemeinen Ablauf auf einem Docker-Host die gemeinsame Laufzeitanleitung:
GCP-spezifische Hinweise zum Start
Wenn der Build während pnpm install --frozen-lockfile mit Killed oder exit code 137 fehlschlägt, steht der VM nicht genügend Arbeitsspeicher zur Verfügung. Verwenden Sie mindestens e2-small oder e2-medium, um zuverlässigere erste Builds zu erhalten.
Wenn Sie die Bindung an das LAN verwenden (OPENCLAW_GATEWAY_BIND=lan), konfigurieren Sie vor dem Fortfahren einen vertrauenswürdigen Browser-Ursprung:
docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins '["http://127.0.0.1:18789"]' --strict-jsonErsetzen Sie 18789 durch den von Ihnen konfigurierten Port, falls Sie ihn geändert haben.
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 http://127.0.0.1:18789/ in Ihrem Browser.
Geben Sie einen bereinigten Dashboard-Link erneut aus:
docker compose run --rm openclaw-cli dashboard --no-openWenn die Benutzeroberfläche zur Authentifizierung mit einem gemeinsamen Geheimnis auffordert, fügen Sie das konfigurierte Token oder Passwort in die Einstellungen der Control UI ein. Dieser Docker-Ablauf schreibt standardmäßig ein Token; verwenden Sie stattdessen Ihr konfiguriertes Passwort, wenn Sie zur Passwortauthentifizierung gewechselt haben.
Wenn die Control UI unauthorized oder disconnected (1008): pairing required anzeigt, genehmigen Sie das Browsergerät:
docker compose run --rm openclaw-cli devices listdocker compose run --rm openclaw-cli devices approve <requestId>Die gemeinsame Übersicht zur Persistenz finden Sie unter Docker-VM-Laufzeit, den Aktualisierungsablauf ebenfalls dort.
Fehlerbehebung
SSH-Verbindung abgelehnt
Die Übertragung des SSH-Schlüssels kann nach dem Erstellen der VM 1–2 Minuten dauern. Warten Sie und versuchen Sie es erneut.
Probleme mit OS Login
Überprüfen Sie Ihr OS-Login-Profil:
gcloud compute os-login describe-profileStellen 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 Speichermangels beendet:
# Zuerst die VM stoppengcloud compute instances stop openclaw-gateway --zone=us-central1-a # Maschinentyp änderngcloud compute instances set-machine-type openclaw-gateway \ --zone=us-central1-a \ --machine-type=e2-small # VM startengcloud compute instances start openclaw-gateway --zone=us-central1-aDienstkonten (bewährte Sicherheitsmethode)
Für die persönliche Nutzung ist Ihr standardmäßiges Benutzerkonto ausreichend. Erstellen Sie für Automatisierung oder CI/CD ein eigenes Dienstkonto mit minimalen Berechtigungen:
gcloud iam service-accounts create openclaw-deploy \ --display-name="OpenClaw Deployment" gcloud projects add-iam-policy-binding my-openclaw-project \ --member="serviceAccount:openclaw-deploy@my-openclaw-project.iam.gserviceaccount.com" \ --role="roles/compute.instanceAdmin.v1"Vermeiden Sie für Automatisierungen die Rolle „Owner“. Verwenden Sie die restriktivste Rolle, die funktioniert. Weitere Informationen finden Sie unter Rollen verstehen.
Nächste Schritte
- Nachrichtenkanäle einrichten: Kanäle
- Lokale Geräte als Nodes koppeln: Nodes
- Gateway konfigurieren: Gateway-Konfiguration