跳到內容

在 GCP 部署 OpenClaw:用 Docker 打造 24/7 不斷線的 Gateway

我以前常把 OpenClaw 跑在自己的筆電上,但只要一蓋上螢幕或網路斷掉,AI 助理就直接失聯。如果你也想要一個 24/7 在線、不用擔心家裡停電或斷網的環境,把 OpenClaw 丟到 GCP 這種雲端 VPS 是最省心的選擇。每個月花個 5 到 12 美金,就能換到一個超級穩定的後台。

這篇指南會教你如何在 GCP 的 Compute Engine 跑一個帶有 Docker 的 OpenClaw Gateway。我們會把狀態存放在硬碟裡,並將必要的 Binary 直接封裝進 Image,確保重啟後一切都能正常運作。

  • 一個 GCP 帳號(e2-micro 等級有免費額度)
  • 已安裝 gcloud CLI(或直接用 Cloud Console 網頁版)
  • 基礎的 SSH 操作經驗
  • 大約 20-30 分鐘的時間
  • Docker 與 Docker Compose
  • 模型 API Key
  • 其他選配的憑證(例如 WhatsApp QR, Telegram bot token 或 Gmail OAuth)

如果你是老手,這是 5 分鐘快速路徑:

  1. 建立 GCP 專案並啟用 Compute Engine API
  2. 建立 VM (e2-small, Debian 12, 20GB)
  3. SSH 進入 VM 並安裝 Docker
  4. Clone OpenClaw 專案
  5. 建立存放資料的資料夾
  6. 設定 .env 與 docker-compose.yml
  7. 把需要的 Binary 寫進 Dockerfile 並啟動

首先,你需要一個家。你可以用 gcloud 指令或是直接在網頁點選。

建立專案:

Terminal window
gcloud projects create my-openclaw-project --name="OpenClaw Gateway"
gcloud config set project my-openclaw-project

去 GCP 控制台 確定有綁定信用卡,然後啟用 API:

Terminal window
gcloud services enable compute.googleapis.com

建立 VM 執行個體: 推薦使用 e2-small,因為 e2-micro 的 1GB RAM 在跑複雜任務時可能會 OOM(記憶體不足)。

Terminal window
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

SSH 進入你的 VM:

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

進去後直接跑這串指令安裝 Docker:

Terminal window
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

記得登出再重新 SSH 進去,這樣你的權限才會生效。

先把程式碼抓下來:

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

建立存放資料的資料夾。這步很重要,因為 Docker Container 隨時會重啟,我們要確保設定檔存在 VM 的硬碟上:

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

接著建立 .env 檔案,貼上你的設定:

Terminal window
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

在 Docker 裡面跑 OpenClaw 有個陷阱:如果你在 Container 執行時才安裝 gog 或 wacli,重啟後它們就會消失。

你必須修改 Dockerfile,把需要的工具直接包進去。這是一個範例:

FROM node:22-bookworm
RUN apt-get update && apt-get install -y socat && rm -rf /var/lib/apt/lists/*
# 安裝 Gmail CLI
RUN curl -L https://github.com/steipete/gog/releases/latest/download/gog_Linux_x86_64.tar.gz \
| tar -xz -C /usr/local/bin && chmod +x /usr/local/bin/gog
# 安裝 WhatsApp CLI
RUN curl -L https://github.com/steipete/wacli/releases/latest/download/wacli_Linux_x86_64.tar.gz \
| tar -xz -C /usr/local/bin && chmod +x /usr/local/bin/wacli
WORKDIR /app
COPY . .
RUN corepack enable && pnpm install --frozen-lockfile && pnpm build && pnpm ui:install && pnpm ui:build
ENV NODE_ENV=production
CMD ["node","dist/index.js"]

跑起你的 Gateway:

Terminal window
docker compose build
docker compose up -d openclaw-gateway

確認一下有沒有成功跑起來:

Terminal window
docker compose logs -f openclaw-gateway

看到 [gateway] listening on ws://0.0.0.0:18789 就代表成功了。

怎麼連進去? 為了安全,我們不建議直接對外開放 18789 Port。請在你的筆電跑這條 SSH Tunnel 指令:

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

現在打開瀏覽器輸入 http://127.0.0.1:18789/,貼上你的 token 就能開始用了。


  • SSH 連不上:剛建立 VM 時,SSH Key 同步需要 1-2 分鐘,等一下再試。
  • 記憶體爆掉 (OOM):如果你堅持用 e2-micro 但發現它一直掛掉,請升級到 e2-small。
  • Binary 找不到:如果你新加了 Skill 需要新的工具,記得去改 Dockerfile 然後重新 docker compose build。
  • 權限錯誤:確保 ~/.openclaw 的權限是你的使用者可以讀寫的。
組件位置備註
Gateway 設定/home/node/.openclaw/包含 token 與 openclaw.json
模型設定檔/home/node/.openclaw/你的 API Key 都在這
WhatsApp Session/home/node/.openclaw/存放在這才不用每次掃 QR Code
外部 Binary/usr/local/bin/必須包在 Docker Image 裡

如果你在設定過程中卡住了,可以找我們的 AI Setup Assistant 聊聊。

OpenClaw

OpenClaw Expert

還是卡住了?

如果這篇文件沒有解決你的情境,直接問 OpenClaw Expert,拿到可執行步驟。