OpenClaw Cloudflare デプロイ記録

NOTE

OpenClawをCloudflare Workers上にデプロイし、Discord BotとしてAI秘書兼X広報エージェントを構築した作業記録。

CAUTION

2026-03-07: Cloudflare上のWorkerは削除済み コスト対効果が低い(使用頻度に対して高額)ため、Cloudflare上のOpenClaw Workerは削除しました。 現在Cloudflare上ではデプロイしていません。再デプロイが必要な場合は本記録を参照。

デプロイ情報

項目
Worker URLhttps://moltbot-sandbox.umebiz5726.workers.dev
Admin UIhttps://moltbot-sandbox.umebiz5726.workers.dev/_admin/
LLMプロバイダーAnthropic Claude (ANTHROPIC_API_KEY)
Discord BotAntiCrow
R2バケットmoltbot-data
CF Access Teamopenclaw2688.cloudflareaccess.com
デプロイ日2026-03-01

アーキテクチャ

Discord DM → Cloudflare Worker → Sandbox Container → OpenClaw Gateway → Claude API
                  ↕                      ↕
          CF Access (認証)        R2 Storage (永続化)

セットアップ手順まとめ

1. Moltworkerリポジトリ取得

git clone https://github.com/cloudflare/moltworker.git
cd moltworker
npm install

2. Wrangler Secrets設定

# LLM(必須・いずれか1つ)
wrangler secret put ANTHROPIC_API_KEY
 
# ゲートウェイ認証
wrangler secret put MOLTBOT_GATEWAY_TOKEN
 
# Cloudflare Access
wrangler secret put CF_ACCESS_AUD
wrangler secret put CF_ACCESS_TEAM_DOMAIN
 
# Cloudflareアカウント
wrangler secret put CF_ACCOUNT_ID
 
# Discord Bot
wrangler secret put DISCORD_BOT_TOKEN
 
# R2永続化
wrangler secret put R2_ACCESS_KEY_ID
wrangler secret put R2_SECRET_ACCESS_KEY
 
# デバッグ(任意)
wrangler secret put DEBUG_ROUTES  # "true"

3. デプロイ

npm run deploy

4. 初回起動

  1. Admin UI (_admin/) にブラウザでアクセス(CF Access認証を通過)
  2. これによりコンテナが起動し、Discord Botがオンラインになる
  3. DiscordでBotにDMを送信 → AIが応答

運用上の注意

IMPORTANT

再デプロイ後は必ずAdmin UIにアクセスすること OpenClawのGatewayは遅延起動方式。認証済みHTTPリクエストがないとコンテナは起動しない。 Admin UIにブラウザでアクセスするとGateway起動 → Discord Bot復帰。

WARNING

Dockerキャッシュバストについて Dockerfile# Build cache bust:コメントを変更すると新しいDocker Imageが作られる。 R2バックアップがない状態でこれを行うと、コンテナ内の全データ(設定・ペアリング・会話履歴)が消失する。 必ずAdmin UIで「Backup Now」でR2にバックアップしてから行うこと。

R2永続化の仕組み

  • バックアップ: Admin UIの「Backup Now」ボタン、またはDurable Object Alarmで自動実行
  • リストア: コンテナ起動時に start-openclaw.shrclone で R2 → コンテナにデータ復元
  • 対象データ: OpenClaw設定、エージェント設定、会話履歴、デバイスペアリング

トラブルシューティング

Botがオフライン

→ Admin UIにブラウザでアクセスしてコンテナ起動をトリガー

”No API key found for provider anthropic”

wrangler secret put ANTHROPIC_API_KEY でClaude APIキーを設定

Admin UIが500エラー

start-openclaw.sh に問題がある可能性。wrangler tail でログ確認

デバイスペアリングが消えた

→ R2バックアップから復元されるはず。なければDiscord DMで再ペアリング

関連ファイル

  • リポジトリ: c:\ai_work\quartz-site\obsidian valut\moltworker\
  • 機密情報: 機密情報管理