透過 Infrastructure as Code 在 Render 上部署 OpenClaw。內附的 render.yaml Blueprint 以宣告式定義了整個服務堆疊 — 服務、磁碟、環境變數一次搞定,一鍵部署、基礎設施跟程式碼一起版控。
前置需求
用 Render Blueprint 部署
點擊這個連結會:
- 從儲存庫根目錄的
render.yamlBlueprint 建立新的 Render 服務。 - 提示你設定
SETUP_PASSWORD。 - 建置 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 建置 |
healthCheckPath | Render 監控 /health,不健康時自動重啟 |
sync: false | 部署時才提示輸入值(適合 secret) |
generateValue: true | 自動產生加密安全的值 |
disk | 持久儲存,重新部署後資料不會消失 |
選擇方案
| 方案 | 休眠機制 | 磁碟 | 適合場景 |
|---|---|---|---|
| Free | 閒置 15 分鐘後休眠 | 無 | 測試、Demo |
| Starter | 永不休眠 | 1GB+ | 個人使用、小型團隊 |
| Standard+ | 永不休眠 | 1GB+ | 正式環境、多頻道 |
Blueprint 預設為 starter。想用免費方案的話,在你 fork 的 render.yaml 中改成 plan: free(但注意:沒有持久磁碟代表每次部署設定都會重設)。
部署之後
完成設定精靈
- 前往
https://<your-service>.onrender.com/setup - 輸入你的
SETUP_PASSWORD - 選擇模型供應商並貼上 API 金鑰
- 選用:設定訊息頻道(Telegram、Discord、Slack)
- 點 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。
自訂網域
- 前往 Dashboard → 你的服務 → Settings → Custom Domains
- 新增你的網域
- 依指示設定 DNS(CNAME 指向
*.onrender.com) - 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在本機跑起來