OpenClaw no GCP Compute Engine (Docker, Guia de Producao VPS)

Objetivo

Executar um Gateway OpenClaw persistente em uma VM GCP Compute Engine usando Docker, com estado duravel, binarios integrados e comportamento de reinicio seguro.

Se voce quer “OpenClaw 24/7 por ~5-12 dolares/mes”, esta e uma configuracao confiavel no Google Cloud.

Em termos simples, o que estamos fazendo?

  • Criar um projeto GCP e habilitar faturamento
  • Criar uma VM Compute Engine
  • Instalar Docker
  • Iniciar o Gateway OpenClaw no Docker
  • Persistir ~/.openclaw + ~/.openclaw/workspace no host
  • Acessar a Interface de Controle do notebook via tunel SSH

Este guia usa Debian no GCP Compute Engine. Ubuntu tambem funciona. Para o fluxo Docker generico, consulte Docker.


Caminho rapido (operadores experientes)

  1. Criar projeto GCP + habilitar API Compute Engine
  2. Criar VM Compute Engine (e2-small, Debian 12, 20GB)
  3. SSH na VM
  4. Instalar Docker
  5. Clonar repositorio OpenClaw
  6. Criar diretorios persistentes no host
  7. Configurar .env e docker-compose.yml
  8. Integrar binarios, construir e iniciar

O que voce precisa

  • Conta GCP (elegivel para tier gratuito com e2-micro)
  • CLI gcloud instalado (ou use Cloud Console)
  • Acesso SSH do notebook
  • ~20-30 minutos
  • Docker e Docker Compose
  • Credenciais de autenticacao de modelo

1) Instalar CLI gcloud (ou usar Console)

Opcao A: CLI gcloud (recomendado para automacao)

Instale de https://cloud.google.com/sdk/docs/install

gcloud init
gcloud auth login

Opcao B: Cloud Console em https://console.cloud.google.com


2) Criar projeto GCP

gcloud projects create my-openclaw-project --name="OpenClaw Gateway"
gcloud config set project my-openclaw-project
gcloud services enable compute.googleapis.com

3) Criar a VM

TipoSpecsCustoNotas
e2-medium2 vCPU, 4GB RAM~25 dolares/mesMais confiavel para builds Docker locais
e2-small2 vCPU, 2GB RAM~12 dolares/mesMinimo recomendado para build Docker
e2-micro2 vCPU (compartilhado), 1GB RAMElegivel tier gratuitoFrequentemente falha com Docker build OOM (exit 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-cloud

4) SSH na VM

gcloud compute ssh openclaw-gateway --zone=us-central1-a

5) Instalar Docker (na 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
exit

SSH novamente:

gcloud compute ssh openclaw-gateway --zone=us-central1-a
docker --version
docker compose version

6) Clonar o repositorio OpenClaw

git clone https://github.com/openclaw/openclaw.git
cd openclaw

7) Criar diretorios persistentes no host

mkdir -p ~/.openclaw
mkdir -p ~/.openclaw/workspace

8) Configurar variaveis de ambiente

Crie .env na raiz do repositorio.

OPENCLAW_IMAGE=openclaw:latest
OPENCLAW_GATEWAY_TOKEN=change-me-now
OPENCLAW_GATEWAY_BIND=lan
OPENCLAW_GATEWAY_PORT=18789
OPENCLAW_CONFIG_DIR=/home/$USER/.openclaw
OPENCLAW_WORKSPACE_DIR=/home/$USER/.openclaw/workspace
GOG_KEYRING_PASSWORD=change-me-now
XDG_CONFIG_HOME=/home/node/.openclaw

Gere segredos fortes: openssl rand -hex 32

Nao faca commit deste arquivo.


9) Configuracao Docker Compose

Crie ou atualize 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:
      - "127.0.0.1:${OPENCLAW_GATEWAY_PORT}:18789"
    command:
      [
        "node",
        "dist/index.js",
        "gateway",
        "--bind",
        "${OPENCLAW_GATEWAY_BIND}",
        "--port",
        "${OPENCLAW_GATEWAY_PORT}",
      ]

10) Etapas compartilhadas do runtime Docker VM

Use o guia de runtime compartilhado:


11) Notas especificas do GCP

No GCP, se o build falhar com Killed ou exit code 137, a VM esta sem memoria. Use e2-small no minimo.

Ao fazer binding em LAN (OPENCLAW_GATEWAY_BIND=lan), configure uma origem de navegador confiavel:

docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins '["http://127.0.0.1:18789"]' --strict-json

12) Acessar do seu notebook

Crie um tunel SSH:

gcloud compute ssh openclaw-gateway --zone=us-central1-a -- -L 18789:127.0.0.1:18789

Abra http://127.0.0.1:18789/ no navegador.


Solucao de problemas

Conexao SSH recusada: A propagacao de chaves SSH pode levar 1-2 minutos. Aguarde e tente novamente.

OOM: Atualize para e2-small (minimo) ou e2-medium:

gcloud compute instances stop openclaw-gateway --zone=us-central1-a
gcloud compute instances set-machine-type openclaw-gateway \
  --zone=us-central1-a --machine-type=e2-small
gcloud compute instances start openclaw-gateway --zone=us-central1-a

Proximos passos