Emdash CMS の Cloudflare Free プラン制限 FAQ

Free プランで引き続き使えること・使えないこと、および有料の Dynamic Workers 機能なしで Emdash CMS を安全に公開する方法。

Cloudflare Free プランは Emdash CMS の何を制限する?

コア CMS のワークフローは利用可能だが、サンドボックス化されたプラグイン実行は不可。
実務ではコンテンツ管理と通常のサイトデプロイは動くが、Dynamic Workers に依存するプラグイン隔離は動かない。

設定に worker_loaders を残すべき?

いいえ。Free プランでは削除する。
残すと有料機能に依存するため、デプロイや実行時の失敗を招きやすい。

Free プランでも本番リリースできる?

はい。ただし境界をはっきりさせる:

  • コンテンツ・ドキュメント・マーケサイトには適する
  • サンドボックス化された第三者プラグインにコアワークフローが依存する場合は不適

サンドボックス実行がミッションクリティカルでなければ、Free で開始して十分なことが多い。

Free プランでプラグインを安全に扱うには?

信頼できるプラグイン方針を使う:

  • 所有権が監査可能なプラグインだけ有効化
  • リリース前に依存関係と権限をレビュー
  • 高リスクの統合ロジックは分離されたバックエンドへ

Free は「プラグイン禁止」ではなく「信頼できないプラグイン用の隔離ランタイムがない」という意味。

デプロイは成功するのにプラグイン機能が失敗するのはなぜ?

「デプロイ可能」と「サンドボックス可能」は要件が違うから。
基本的な Worker ランタイムでデプロイは可能だが、Dynamic Workers が隔離されたプラグイン実行を可能にする。

いつ有料プランを本気で検討すべき?

次のいずれかならアップグレードを検討:

  • 部分的に信頼できないソースのプラグインを動かす必要がある
  • コンプライアンスがプラグイン単位の隔離証跡を求める
  • プラグイン権限の悪用によるビジネス影響が許容できない

まだ当てはまらないなら、Free で安定運用するのは妥当な戦略。

Free ティアの最小ローンチ前チェックリスト

公開前に確認:

  1. worker_loaders を削除した。
  2. D1/R2 のバインド名が一致している。
  3. プラグイン一覧にサンドボックス必須の項目がない。
  4. リリース後の検証でコンテンツの書き込み・読み込みとメディアアップロードをカバーする。

この 4 点が、早すぎるプラン変更より実害リスクを下げる。

Free ティア設定例

{
  "d1_databases": [{ "binding": "DB", "database_name": "your-db", "database_id": "..." }],
  "r2_buckets": [{ "binding": "MEDIA", "bucket_name": "your-media-bucket" }]
  // Free プランでは worker_loaders を使わない
}