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          # デプロイ時にプロンプト表示
      - key: OPENCLAW_STATE_DIR
        value: /data/.openclaw
      - key: OPENCLAW_WORKSPACE_DIR
        value: /data/workspace
      - key: OPENCLAW_GATEWAY_TOKEN
        generateValue: true  # 安全なトークンを自動生成
    disk:
      name: openclaw-data
      mountPath: /data
      sizeGB: 1

使用される主なBlueprint機能:

機能目的
runtime: dockerリポジトリのDockerfileからビルド
healthCheckPathRenderが /health を監視し、異常なインスタンスを再起動
sync: falseデプロイ時に値の入力を求める(シークレット用)
generateValue: true暗号学的に安全な値を自動生成
disk再デプロイ後も保持される永続ストレージ

プランの選択

プランスピンダウンディスク最適な用途
Freeアイドル15分後利用不可テスト、デモ
Starterなし1GB以上個人利用、小規模チーム
Standard以上なし1GB以上本番環境、複数チャネル

Blueprintはデフォルトで starter に設定されています。無料プランを使用する場合は、forkした render.yamlplan: free に変更してください(ただし、永続ディスクがないため、デプロイごとに設定がリセットされます)。

デプロイ後

セットアップウィザードを完了する

  1. https://<your-service>.onrender.com/setup にアクセスします
  2. SETUP_PASSWORD を入力します
  3. モデルプロバイダーを選択し、APIキーを貼り付けます
  4. オプションでメッセージングチャネル(Telegram、Discord、Slack)を設定します
  5. Run setup をクリックします

Control UIにアクセス

Webダッシュボードは https://<your-service>.onrender.com/openclaw で利用できます。

Renderダッシュボードの機能

ログ

Dashboard → your service → Logs でリアルタイムログを表示できます。以下でフィルタリング可能:

  • ビルドログ(Dockerイメージ作成)
  • デプロイログ(サービス起動)
  • ランタイムログ(アプリケーション出力)

シェルアクセス

デバッグのため、Dashboard → your service → Shell からシェルセッションを開けます。永続ディスクは /data にマウントされています。

環境変数

Dashboard → your service → Environment で変数を変更できます。変更すると自動的に再デプロイされます。

自動デプロイ

元のOpenClawリポジトリを使用している場合、RenderはOpenClawを自動デプロイしません。更新するには、ダッシュボードから手動でBlueprint同期を実行してください。

カスタムドメイン

  1. Dashboard → your service → Settings → Custom Domains に移動します
  2. ドメインを追加します
  3. 指示に従ってDNSを設定します(*.onrender.com へのCNAME)
  4. Renderが自動的にTLS証明書をプロビジョニングします

スケーリング

Renderは水平および垂直スケーリングをサポートします:

  • 垂直:プランを変更してより多くのCPU/RAMを取得
  • 水平:インスタンス数を増やす(Standardプラン以上)

OpenClawの場合、通常は垂直スケーリングで十分です。水平スケーリングにはスティッキーセッションまたは外部状態管理が必要です。

バックアップと移行

いつでも設定とワークスペースをエクスポートできます:

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

これにより、任意のOpenClawホストで復元可能な移植可能なバックアップがダウンロードされます。

トラブルシューティング

サービスが起動しない

Renderダッシュボードのデプロイログを確認してください。よくある問題:

  • SETUP_PASSWORD が設定されていない — Blueprintがこれを要求しますが、設定されているか確認してください
  • ポートの不一致 — PORT=8080 がDockerfileで公開されているポートと一致していることを確認してください

コールドスタートが遅い(無料プラン)

無料プランのサービスは、15分間のアイドル後にスピンダウンします。スピンダウン後の最初のリクエストは、コンテナが起動する間に数秒かかります。常時稼働するには、Starterプランにアップグレードしてください。

再デプロイ後にデータが失われる

これは無料プラン(永続ディスクなし)で発生します。有料プランにアップグレードするか、 /setup/export から定期的に設定をエクスポートしてください。

ヘルスチェックの失敗

Renderは30秒以内に /health から200レスポンスを期待します。ビルドは成功するがデプロイが失敗する場合、サービスの起動に時間がかかりすぎている可能性があります。確認事項:

  • ビルドログでエラーを確認
  • docker build && docker run でコンテナがローカルで実行されるか確認