Hosting
GCP
Jalankan OpenClaw Gateway yang persisten di VM GCP Compute Engine menggunakan Docker, dengan state yang tahan lama, biner yang sudah dibundel, dan perilaku restart yang aman.
Jika Anda menginginkan "OpenClaw 24/7 dengan biaya sekitar ~$5-12/bln", ini adalah penyiapan yang andal di Google Cloud. Harga bervariasi berdasarkan tipe mesin dan region; pilih VM terkecil yang sesuai dengan beban kerja Anda dan tingkatkan skalanya jika mengalami OOM.
Apa yang kita lakukan (secara sederhana)?
- Membuat project GCP dan mengaktifkan billing
- Membuat VM Compute Engine
- Menginstal Docker (runtime aplikasi terisolasi)
- Memulai OpenClaw Gateway di Docker
- Menyimpan
~/.openclaw+~/.openclaw/workspacesecara persisten di host (tetap ada setelah restart/rebuild) - Mengakses UI Kontrol dari laptop Anda melalui tunnel SSH
State ~/.openclaw yang di-mount tersebut mencakup openclaw.json, per-agent
agents/<agentId>/agent/auth-profiles.json, dan .env.
Gateway dapat diakses melalui:
- Penerusan port SSH dari laptop Anda
- Eksposur port langsung jika Anda mengelola firewall dan token sendiri
Panduan ini menggunakan Debian di GCP Compute Engine. Ubuntu juga berfungsi; petakan paketnya sesuai kebutuhan. Untuk alur Docker generik, lihat Docker.
Jalur cepat (operator berpengalaman)
- Buat project GCP + aktifkan Compute Engine API
- Buat VM Compute Engine (e2-small, Debian 12, 20GB)
- SSH ke VM
- Instal Docker
- Clone repositori OpenClaw
- Buat direktori host persisten
- Konfigurasikan
.envdandocker-compose.yml - Bundel biner yang diperlukan, build, dan jalankan
Yang Anda perlukan
- Akun GCP (memenuhi syarat free tier untuk e2-micro)
- gcloud CLI terinstal (atau gunakan Cloud Console)
- Akses SSH dari laptop Anda
- Kenyamanan dasar dengan SSH + salin/tempel
- ~20-30 menit
- Docker dan Docker Compose
- Kredensial auth model
- Kredensial provider opsional
- WhatsApp QR
- Token bot Telegram
- Gmail OAuth
Instal gcloud CLI (atau gunakan Console)
Opsi A: gcloud CLI (direkomendasikan untuk otomatisasi)
Instal dari https://cloud.google.com/sdk/docs/install
Inisialisasi dan autentikasi:
gcloud init
gcloud auth login
Opsi B: Cloud Console
Semua langkah dapat dilakukan melalui UI web di https://console.cloud.google.com
Buat project GCP
CLI:
gcloud projects create my-openclaw-project --name="OpenClaw Gateway"
gcloud config set project my-openclaw-project
Aktifkan billing di https://console.cloud.google.com/billing (diperlukan untuk Compute Engine).
Aktifkan Compute Engine API:
gcloud services enable compute.googleapis.com
Console:
- Buka IAM & Admin > Create Project
- Beri nama dan buat
- Aktifkan billing untuk project
- Buka APIs & Services > Enable APIs > cari "Compute Engine API" > Enable
Buat VM
Tipe mesin:
| Tipe | Spesifikasi | Biaya | Catatan |
|---|---|---|---|
| e2-medium | 2 vCPU, 4GB RAM | ~$25/bln | Paling andal untuk build Docker lokal |
| e2-small | 2 vCPU, 2GB RAM | ~$12/bln | Minimum yang direkomendasikan untuk build Docker |
| e2-micro | 2 vCPU (shared), 1GB RAM | Memenuhi syarat free tier | Sering gagal dengan OOM build Docker (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:
- Buka Compute Engine > VM instances > Create instance
- Nama:
openclaw-gateway - Region:
us-central1, Zone:us-central1-a - Tipe mesin:
e2-small - Boot disk: Debian 12, 20GB
- Buat
SSH ke VM
CLI:
gcloud compute ssh openclaw-gateway --zone=us-central1-a
Console:
Klik tombol "SSH" di samping VM Anda pada dasbor Compute Engine.
Catatan: Propagasi kunci SSH dapat memerlukan 1-2 menit setelah VM dibuat. Jika koneksi ditolak, tunggu dan coba lagi.
Instal Docker (di 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
Logout dan login kembali agar perubahan grup berlaku:
exit
Lalu SSH kembali:
gcloud compute ssh openclaw-gateway --zone=us-central1-a
Verifikasi:
docker --version
docker compose version
Clone repositori OpenClaw
git clone https://github.com/openclaw/openclaw.git
cd openclaw
Panduan ini mengasumsikan Anda akan membuat image kustom untuk menjamin persistensi biner.
Buat direktori host persisten
Container Docker bersifat efemeral. Semua state jangka panjang harus berada di host.
mkdir -p ~/.openclaw
mkdir -p ~/.openclaw/workspace
Konfigurasikan variabel lingkungan
Buat .env di root repositori.
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
Setel OPENCLAW_GATEWAY_TOKEN ketika Anda ingin mengelola token gateway
stabil melalui .env; jika tidak, konfigurasikan gateway.auth.token sebelum
mengandalkan klien lintas restart. Jika kedua sumber tidak ada, OpenClaw menggunakan
token khusus runtime untuk startup tersebut. Buat password keyring dan tempelkan
ke GOG_KEYRING_PASSWORD:
openssl rand -hex 32
Jangan commit file ini.
File .env ini untuk env container/runtime seperti OPENCLAW_GATEWAY_TOKEN.
Auth OAuth/API-key provider yang disimpan berada di
~/.openclaw/agents/<agentId>/agent/auth-profiles.json yang di-mount.
Konfigurasi Docker Compose
Buat atau perbarui 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 hanya untuk kemudahan bootstrap, bukan pengganti konfigurasi gateway yang tepat. Tetap setel auth (gateway.auth.token atau password) dan gunakan pengaturan bind yang aman untuk deployment Anda.
Langkah runtime VM Docker bersama
Gunakan panduan runtime bersama untuk alur host Docker umum:
Catatan peluncuran khusus GCP
Di GCP, jika build gagal dengan Killed atau exit code 137 selama pnpm install --frozen-lockfile, VM kehabisan memori. Gunakan minimum e2-small, atau e2-medium untuk build pertama yang lebih andal.
Saat bind ke LAN (OPENCLAW_GATEWAY_BIND=lan), konfigurasikan origin browser tepercaya sebelum melanjutkan:
docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins '["http://127.0.0.1:18789"]' --strict-json
Jika Anda mengubah port gateway, ganti 18789 dengan port yang Anda konfigurasikan.
Akses dari laptop Anda
Buat tunnel SSH untuk meneruskan port Gateway:
gcloud compute ssh openclaw-gateway --zone=us-central1-a -- -L 18789:127.0.0.1:18789
Buka di browser Anda:
http://127.0.0.1:18789/
Cetak ulang tautan dasbor yang bersih:
docker compose run --rm openclaw-cli dashboard --no-open
Jika UI meminta auth shared-secret, tempelkan token atau password yang dikonfigurasi ke pengaturan UI Kontrol. Alur Docker ini menulis token secara default; jika Anda mengubah konfigurasi container ke auth password, gunakan password tersebut sebagai gantinya.
Jika UI Kontrol menampilkan unauthorized atau disconnected (1008): pairing required, setujui perangkat browser:
docker compose run --rm openclaw-cli devices list
docker compose run --rm openclaw-cli devices approve <requestId>
Perlu referensi persistensi dan pembaruan bersama lagi? Lihat Runtime VM Docker dan pembaruan Runtime VM Docker.
Pemecahan masalah
Koneksi SSH ditolak
Propagasi kunci SSH dapat memerlukan 1-2 menit setelah VM dibuat. Tunggu dan coba lagi.
Masalah OS Login
Periksa profil OS Login Anda:
gcloud compute os-login describe-profile
Pastikan akun Anda memiliki izin IAM yang diperlukan (Compute OS Login atau Compute OS Admin Login).
Kehabisan memori (OOM)
Jika build Docker gagal dengan Killed dan exit code 137, VM dihentikan karena OOM. Upgrade ke e2-small (minimum) atau e2-medium (direkomendasikan untuk build lokal yang andal):
# 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
Akun layanan (praktik terbaik keamanan)
Untuk penggunaan pribadi, akun pengguna default Anda sudah cukup.
Untuk otomatisasi atau pipeline CI/CD, buat akun layanan khusus dengan izin minimal:
-
Buat akun layanan:
gcloud iam service-accounts create openclaw-deploy \ --display-name="OpenClaw Deployment" -
Berikan role Compute Instance Admin (atau role kustom yang lebih sempit):
gcloud projects add-iam-policy-binding my-openclaw-project \ --member="serviceAccount:[email protected]" \ --role="roles/compute.instanceAdmin.v1"
Hindari menggunakan role Owner untuk otomatisasi. Gunakan prinsip hak akses paling sedikit.
Lihat https://cloud.google.com/iam/docs/understanding-roles untuk detail role IAM.
Langkah berikutnya
- Siapkan saluran perpesanan: Saluran
- Pasangkan perangkat lokal sebagai Node: Node
- Konfigurasikan Gateway: Konfigurasi Gateway