透過 Infrastructure as Code 在 Render 上部署 OpenClaw。內附的 render.yaml Blueprint 以宣告式定義了整個服務堆疊 — 服務、磁碟、環境變數一次搞定,一鍵部署、基礎設施跟程式碼一起版控。

前置需求

用 Render Blueprint 部署

Deploy to Render

點擊這個連結會:

  1. 從儲存庫根目錄的 render.yaml Blueprint 建立新的 Render 服務。
  2. 提示你設定 SETUP_PASSWORD
  3. 建置 Docker 映像並部署。

部署完成後,服務 URL 格式為 https://<service-name>.onrender.com

理解 Blueprint

Render Blueprint 是用 YAML 定義基礎設施的檔案。這個儲存庫中的 render.yaml 已經設定好執行 OpenClaw 所需的一切:

services:
  - type: web
    name: openclaw
    runtime: docker
    plan: starter
    healthCheckPath: /health
    envVars:
      - key: PORT
        value: "8080"
      - key: SETUP_PASSWORD
        sync: false # prompts during deploy
      - key: OPENCLAW_STATE_DIR
        value: /data/.openclaw
      - key: OPENCLAW_WORKSPACE_DIR
        value: /data/workspace
      - key: OPENCLAW_GATEWAY_TOKEN
        generateValue: true # auto-generates a secure token
    disk:
      name: openclaw-data
      mountPath: /data
      sizeGB: 1

用到的 Blueprint 功能:

功能用途
runtime: docker從儲存庫的 Dockerfile 建置
healthCheckPathRender 監控 /health,不健康時自動重啟
sync: false部署時才提示輸入值(適合 secret)
generateValue: true自動產生加密安全的值
disk持久儲存,重新部署後資料不會消失

選擇方案

方案休眠機制磁碟適合場景
Free閒置 15 分鐘後休眠測試、Demo
Starter永不休眠1GB+個人使用、小型團隊
Standard+永不休眠1GB+正式環境、多頻道

Blueprint 預設為 starter。想用免費方案的話,在你 fork 的 render.yaml 中改成 plan: free(但注意:沒有持久磁碟代表每次部署設定都會重設)。

部署之後

完成設定精靈

  1. 前往 https://<your-service>.onrender.com/setup
  2. 輸入你的 SETUP_PASSWORD
  3. 選擇模型供應商並貼上 API 金鑰
  4. 選用:設定訊息頻道(Telegram、Discord、Slack)
  5. Run setup

使用 Control UI

網頁儀表板在 https://<your-service>.onrender.com/openclaw

Render Dashboard 功能

日誌

Dashboard → 你的服務 → Logs 檢視即時日誌。可篩選:

  • 建置日誌(Docker 映像建立)
  • 部署日誌(服務啟動)
  • 執行階段日誌(應用程式輸出)

Shell 存取

需要除錯時,在 Dashboard → 你的服務 → Shell 開啟 shell 工作階段。持久磁碟掛載在 /data

環境變數

Dashboard → 你的服務 → Environment 修改變數。變更會觸發自動重新部署。

自動部署

如果你用的是原始 OpenClaw 儲存庫,Render 不會自動部署你的 OpenClaw。要更新的話,從 Dashboard 手動執行 Blueprint sync。

自訂網域

  1. 前往 Dashboard → 你的服務 → Settings → Custom Domains
  2. 新增你的網域
  3. 依指示設定 DNS(CNAME 指向 *.onrender.com
  4. Render 會自動簽發 TLS 憑證

擴充

Render 支援水平和垂直擴充:

  • 垂直:升級方案以取得更多 CPU/RAM
  • 水平:增加實例數量(Standard 方案以上)

對 OpenClaw 來說,垂直擴充通常就夠了。水平擴充需要 sticky session 或外部狀態管理。

備份與搬遷

隨時匯出你的設定和工作區:

https://<your-service>.onrender.com/setup/export

這會下載一份可攜式備份,你可以在任何 OpenClaw 主機上還原。

疑難排解

服務無法啟動

到 Render Dashboard 檢查部署日誌。常見問題:

  • 缺少 SETUP_PASSWORD — Blueprint 部署時會提示設定,但還是確認一下有沒有設好
  • Port 不對 — 確認 PORT=8080 和 Dockerfile expose 的 port 一致

冷啟動緩慢(免費方案)

免費方案的服務閒置 15 分鐘後會休眠。休眠後的第一次請求需要幾秒鐘等容器啟動。升級到 Starter 方案就能常駐。

重新部署後資料遺失

這發生在免費方案上(沒有持久磁碟)。升級到付費方案,或定期透過 /setup/export 匯出設定。

健康檢查失敗

Render 預期 /health 在 30 秒內回傳 200。如果建置成功但部署失敗,可能是服務啟動太慢。檢查:

  • 建置日誌有沒有錯誤
  • 容器能不能用 docker build && docker run 在本機跑起來