OpenClaw on GCP Compute Engine (Docker, Production VPS Guide)
Goal
Run a persistent OpenClaw Gateway on a GCP Compute Engine VM using Docker, with durable state, baked-in binaries, and safe restart behavior. If you want “OpenClaw 24/7 for ~$5-12/mo”, this is a reliable setup on Google Cloud. Pricing varies by machine type and region; pick the smallest VM that fits your workload and scale up if you hit OOMs.What are we doing (simple terms)?
- Create a GCP project and enable billing
- Create a Compute Engine VM
- Install Docker (isolated app runtime)
- Start the OpenClaw Gateway in Docker
- Persist
~/.openclaw+~/.openclaw/workspaceon the host (survives restarts/rebuilds) - Access the Control UI from your laptop via an SSH tunnel
- SSH port forwarding from your laptop
- Direct port exposure if you manage firewalling and tokens yourself
Quick path (experienced operators)
- Create GCP project + enable Compute Engine API
- Create Compute Engine VM (e2-small, Debian 12, 20GB)
- SSH into the VM
- Install Docker
- Clone OpenClaw repository
- Create persistent host directories
- Configure
.envanddocker-compose.yml - Bake required binaries, build, and launch
What you need
- GCP account (free tier eligible for e2-micro)
- gcloud CLI installed (or use Cloud Console)
- SSH access from your laptop
- Basic comfort with SSH + copy/paste
- ~20-30 minutes
- Docker and Docker Compose
- Model autentifikatsiya ma’lumotlari
- Optional provider credentials
- WhatsApp QR
- Telegram bot token
- Gmail OAuth
1. Install gcloud CLI (or use Console)
Option A: gcloud CLI (recommended for automation) Install from https://cloud.google.com/sdk/docs/install Initialize and authenticate:2. Create a GCP project
CLI:- Go to IAM & Admin > Create Project
- Name it and create
- Enable billing for the project
- Navigate to APIs & Services > Enable APIs > search “Compute Engine API” > Enable
3. Create the VM
Machine types:| Type | Specs | Narx | Eslatmalar |
|---|---|---|---|
| e2-small | 2 vCPU, 2GB RAM | ~$12/oy | Tavsiya etilgan |
| e2-micro | 2 vCPU (bo‘lishilgan), 1GB RAM | Bepul qatlamga mos | Yuklama ostida OOM bo‘lishi mumkin |
- Compute Engine > VM instances > Create instance bo‘limiga o‘ting
- Nomi:
openclaw-gateway - Mintaqa:
us-central1, Zona:us-central1-a - Mashina turi:
e2-small - Yuklash diski: Debian 12, 20GB
- Yaratish
4. VM ga SSH orqali kiring
CLI:5. Docker’ni o‘rnating (VM’da)
6. OpenClaw repozitoriyasini klonlash
7. Doimiy host kataloglarini yarating
Docker konteynerlari vaqtinchalik (ephemeral). Uzoq muddatli barcha holat host’da saqlanishi kerak.8. Muhit o‘zgaruvchilarini sozlash
Repozitoriya ildizida.env yarating.
9. Docker Compose konfiguratsiyasi
docker-compose.yml ni yarating yoki yangilang.
10. Kerakli binarlarni imijga qoʻshib pishiring (muhim)
Ishlayotgan konteyner ichiga binarlarni oʻrnatish — bu tuzoq. Ishga tushirish vaqtida oʻrnatilgan har qanday narsa qayta ishga tushirilganda yoʻqoladi. Skill’lar talab qiladigan barcha tashqi binarlar imijni qurish vaqtida oʻrnatilishi shart. Quyidagi misollar faqat uchta keng tarqalgan binarni koʻrsatadi:gog— Gmail’ga kirish uchungoplaces— Google Places uchunwacli— WhatsApp uchun
- Dockerfile’ni yangilang
- Imijni qayta yarating
- Konteynerlarni qayta ishga tushiring
11. Qurish va ishga tushirish
12. Gateway’ni tekshirish
13. Noutbukingizdan kirish
Gateway portini yoʻnaltirish uchun SSH tunnel yarating:http://127.0.0.1:18789/
Gateway tokeningizni joylashtiring.
Nima qayerda saqlanadi (asosiy manba)
OpenClaw Docker’da ishlaydi, ammo Docker asosiy manba emas. Barcha uzoq muddatli holat qayta ishga tushirishlar, qayta qurishlar va qayta yuklashlardan omon qolishi kerak.| Komponent | Joylashuv | Saqlanish mexanizmi | Izohlar |
|---|---|---|---|
| Gateway konfiguratsiyasi | /home/node/.openclaw/ | Host volume mount | openclaw.json, tokenlarni o‘z ichiga oladi |
| Model autentifikatsiya profillari | /home/node/.openclaw/ | Host volume mount | OAuth tokenlari, API kalitlari |
| Skill konfiguratsiyalari | /home/node/.openclaw/skills/ | Host volume mount | Ko‘nikma darajasi holati |
| Agent ish maydoni | /home/node/.openclaw/workspace/ | Host volume mount | Kod va agent artefaktlari |
| WhatsApp sessiyasi | /home/node/.openclaw/ | Host volume mount | QR orqali kirishni saqlaydi |
| Gmail kalitlar ombori | /home/node/.openclaw/ | Xost hajmi + parol | GOG_KEYRING_PASSWORD talab qilinadi |
| Tashqi binar fayllar | /usr/local/bin/ | Docker imiji | Build vaqtida joylashtirilishi shart |
| Node ish vaqti | Konteyner fayl tizimi | Docker imiji | Har bir imij buildida qayta yig‘iladi |
| OS paketlari | Konteyner fayl tizimi | Docker imiji | Ish vaqtida o‘rnatmang |
| Docker konteyneri | Vaqtinchalik | Qayta ishga tushiriladi | O‘chirish xavfsiz |
Yangilanishlar
VM’da OpenClaw’ni yangilash uchun:Nosozliklarni bartaraf etish
SSH ulanishi rad etildi VM yaratilgandan so‘ng SSH kalitlari tarqalishi 1–2 daqiqa vaqt olishi mumkin. Kuting va qayta urinib ko‘ring. OS Login muammolari OS Login profilingizni tekshiring:Xizmat hisoblari (xavfsizlik bo‘yicha eng yaxshi amaliyot)
Shaxsiy foydalanish uchun standart foydalanuvchi hisobingiz yetarli. Avtomatlashtirish yoki CI/CD quvurlari uchun minimal ruxsatlarga ega alohida xizmat hisobini yarating:-
Xizmat hisobini yarating:
-
Compute Instance Admin rolini (yoki torroq maxsus rolni) bering:
Keyingi qadamlar
- Xabar almashish kanallarini sozlang: Channels
- Mahalliy qurilmalarni tugunlar sifatida juftlang: Nodes
- Gateway-ni sozlang: Gateway configuration