Hosting
GCP
Docker kullanarak bir GCP Compute Engine VM'sinde kalıcı durum, imaja gömülü ikili dosyalar ve güvenli yeniden başlatma davranışıyla sürekli çalışan bir OpenClaw Gateway çalıştırın.
Fiyatlandırma makine türüne ve bölgeye göre değişir; iş yükünüze uygun en küçük VM'yi seçin ve OOM sorunlarıyla karşılaşırsanız ölçeği büyütün.
Gateway'e dizüstü bilgisayarınızdan SSH bağlantı noktası yönlendirme yoluyla veya güvenlik duvarını ve token'ları kendiniz yönetiyorsanız bağlantı noktasını doğrudan açarak erişilebilir.
Bu kılavuzda GCP Compute Engine üzerinde Debian kullanılır. Ubuntu da kullanılabilir; paketleri buna göre eşleyin. Genel Docker akışı için Docker bölümüne bakın.
Gereksinimler
- GCP hesabı (
e2-microücretsiz katman için uygundur) gcloudCLI veya Cloud Console- Dizüstü bilgisayarınızdan SSH erişimi
- Docker ve Docker Compose
- Model kimlik doğrulama bilgileri
- İsteğe bağlı sağlayıcı kimlik bilgileri (WhatsApp QR, Telegram bot token'ı, Gmail OAuth)
- Yaklaşık 20-30 dakika
Hızlı yol
- Bir GCP projesi oluşturun, faturalandırmayı ve Compute Engine API'yi etkinleştirin
- Bir Compute Engine VM'si oluşturun (
e2-small, Debian 12, 20GB) - VM'ye SSH ile bağlanın ve Docker'ı yükleyin
- OpenClaw deposunu klonlayın
- Kalıcı ana makine dizinlerini oluşturun
.envvedocker-compose.ymlyapılandırmasını yapın- Gerekli ikili dosyaları imaja gömün, derleyin ve başlatın
gcloud CLI'yi yükleyin (veya Console'u kullanın)
cloud.google.com/sdk/docs/install adresinden yükleyin, ardından:
gcloud initgcloud auth loginAlternatif olarak aşağıdaki tüm adımları Cloud Console web arayüzü üzerinden gerçekleştirin.
Bir GCP projesi oluşturun
gcloud projects create my-openclaw-project --name="OpenClaw Gateway"gcloud config set project my-openclaw-projectgcloud services enable compute.googleapis.comconsole.cloud.google.com/billing adresinden faturalandırmayı etkinleştirin (Compute Engine için gereklidir).
Console'daki karşılığı: IAM & Admin > Create Project yolunu izleyin, faturalandırmayı etkinleştirin, ardından APIs & Services > Enable APIs > "Compute Engine API" > Enable yolunu izleyin.
VM'yi oluşturun
| Tür | Özellikler | Maliyet | Notlar |
|---|---|---|---|
| e2-medium | 2 vCPU, 4GB RAM | Aylık yaklaşık $25 | Yerel Docker derlemeleri için en güvenilir seçenek |
| e2-small | 2 vCPU, 2GB RAM | Aylık yaklaşık $12 | Docker derlemesi için önerilen en düşük seçenek |
| e2-micro | 2 vCPU (paylaşımlı), 1GB RAM | Ücretsiz katmana uygun | Docker derlemesi genellikle OOM nedeniyle başarısız olur (çıkış 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-cloudVM'ye SSH ile bağlanın
gcloud compute ssh openclaw-gateway --zone=us-central1-aConsole: Compute Engine kontrol panelinde VM'nin yanındaki "SSH" seçeneğine tıklayın.
SSH anahtarının yayılması VM oluşturulduktan sonra 1-2 dakika sürebilir; bağlantı reddedilirse bekleyip yeniden deneyin.
Docker'ı yükleyin (VM üzerinde)
sudo apt-get updatesudo apt-get install -y git curl ca-certificatescurl -fsSL https://get.docker.com | sudo shsudo usermod -aG docker $USERGrup değişikliğinin uygulanması için oturumu kapatıp yeniden açın, ardından tekrar SSH ile bağlanın:
exitgcloud compute ssh openclaw-gateway --zone=us-central1-aDoğrulayın:
docker --versiondocker compose versionOpenClaw deposunu klonlayın
git clone https://github.com/openclaw/openclaw.gitcd openclawBu kılavuz, imaja gömdüğünüz ikili dosyaların yeniden başlatmalardan sonra korunması için özel bir imaj derler.
Kalıcı ana makine dizinlerini oluşturun
Docker konteynerleri geçicidir; tüm uzun ömürlü durum ana makinede tutulmalıdır.
mkdir -p ~/.openclawmkdir -p ~/.openclaw/workspaceOrtam değişkenlerini yapılandırın
Depo kökünde .env oluşturun:
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/.openclawKararlı Gateway token'ını .env üzerinden yönetmek için
OPENCLAW_GATEWAY_TOKEN değerini ayarlayın; aksi takdirde, yeniden başlatmalar arasında
istemcilere güvenmeden önce gateway.auth.token yapılandırmasını yapın. Hiçbiri
ayarlanmazsa OpenClaw, söz konusu başlatma için yalnızca çalışma zamanında geçerli
bir token kullanır. GOG_KEYRING_PASSWORD için bir anahtarlık parolası oluşturun:
openssl rand -hex 32Bu dosyayı commit etmeyin. OPENCLAW_GATEWAY_TOKEN gibi konteyner/çalışma zamanı
ortam değişkenlerini içerir. Saklanan sağlayıcı OAuth/API anahtarıyla kimlik
doğrulama bilgileri bağlanan ~/.openclaw/agents/<agentId>/agent/auth-profiles.json içinde bulunur.
Docker Compose yapılandırması
docker-compose.yml dosyasını oluşturun veya güncelleyin:
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: # Önerilen: Gateway'i VM üzerinde yalnızca geri döngü arabiriminde tutun; SSH tüneli üzerinden erişin. # Herkese açık hâle getirmek için `127.0.0.1:` önekini kaldırın ve güvenlik duvarını buna göre yapılandırın. - "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 yalnızca ilk kurulumu kolaylaştırmak içindir; gerçek Gateway yapılandırmasının yerine geçmez. Dağıtımınız için yine de kimlik doğrulamayı (gateway.auth.token veya parola) ve güvenli bir bağlama modunu ayarlayın.
Paylaşılan Docker VM çalışma zamanı adımları
Genel Docker ana makine akışı için paylaşılan çalışma zamanı kılavuzunu izleyin:
GCP'ye özgü başlatma notları
Derleme pnpm install --frozen-lockfile sırasında Killed veya exit code 137 ile başarısız olursa VM'nin belleği tükenmiştir. En az e2-small, ilk derlemelerin daha güvenilir olması için ise e2-medium kullanın.
LAN'a bağlanırken (OPENCLAW_GATEWAY_BIND=lan) devam etmeden önce güvenilen bir tarayıcı kaynağı yapılandırın:
docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins '["http://127.0.0.1:18789"]' --strict-jsonBağlantı noktasını değiştirdiyseniz 18789 değerini yapılandırdığınız bağlantı noktasıyla değiştirin.
Dizüstü bilgisayarınızdan erişin
Gateway bağlantı noktasını yönlendirmek için bir SSH tüneli oluşturun:
gcloud compute ssh openclaw-gateway --zone=us-central1-a -- -L 18789:127.0.0.1:18789Tarayıcınızda http://127.0.0.1:18789/ adresini açın.
Temiz bir kontrol paneli bağlantısını yeniden yazdırın:
docker compose run --rm openclaw-cli dashboard --no-openKullanıcı arayüzü paylaşılan gizli değerle kimlik doğrulama isterse yapılandırılmış token'ı veya parolayı Control UI ayarlarına yapıştırın (bu Docker akışı varsayılan olarak bir token yazar; parola ile kimlik doğrulamaya geçtiyseniz bunun yerine yapılandırılmış parolanızı kullanın).
Control UI unauthorized veya disconnected (1008): pairing required gösterirse tarayıcı cihazını onaylayın:
docker compose run --rm openclaw-cli devices listdocker compose run --rm openclaw-cli devices approve <requestId>Paylaşılan kalıcılık haritası için Docker VM Çalışma Zamanı, güncelleme işlemi için güncelleme akışı bölümlerine bakın.
Sorun giderme
SSH bağlantısı reddedildi
SSH anahtarının yayılması VM oluşturulduktan sonra 1-2 dakika sürebilir. Bekleyip yeniden deneyin.
OS Login sorunları
OS Login profilinizi kontrol edin:
gcloud compute os-login describe-profileHesabınızın gerekli IAM izinlerine (Compute OS Login veya Compute OS Admin Login) sahip olduğundan emin olun.
Bellek yetersiz (OOM)
Docker derlemesi Killed ve exit code 137 ile başarısız olursa VM, OOM nedeniyle sonlandırılmıştır:
# Önce VM'yi durdurungcloud compute instances stop openclaw-gateway --zone=us-central1-a # Makine türünü değiştiringcloud compute instances set-machine-type openclaw-gateway \ --zone=us-central1-a \ --machine-type=e2-small # VM'yi başlatıngcloud compute instances start openclaw-gateway --zone=us-central1-aHizmet hesapları (güvenlik açısından en iyi uygulama)
Kişisel kullanım için varsayılan kullanıcı hesabınız yeterlidir. Otomasyon veya CI/CD için en düşük düzeyde izinlere sahip özel bir hizmet hesabı oluşturun:
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"Otomasyon için Owner rolünden kaçının; çalışan en dar kapsamlı rolü kullanın. Rolleri anlama bölümüne bakın.
Sonraki adımlar
- Mesajlaşma kanallarını ayarlayın: Kanallar
- Yerel cihazları Node olarak eşleştirin: Node'lar
- Gateway'i yapılandırın: Gateway yapılandırması