手動アップロード / Wrangler / Git連携 / GitHub Actions
CDMCloudflarePagesWranglerGitHubGitHubActions
Claude Codeで作ったWebアプリをCloudflare Pagesに公開する方法は、大きく4つある。ブラウザで手動アップロードする方法、Wranglerで直接デプロイする方法、Cloudflare PagesのGit連携を使う方法、GitHub ActionsからWranglerを実行する方法。
この記事では、4つのデプロイ方法の違い、向いている場面、無料枠やD1への発展を見据えた選び方を整理する。
Cloudflareへのデプロイ方法4つ
Cloudflare Pages へのデプロイ方法は主要なもので 4種類 ある。手軽な順に並べる。
以下、それぞれを順に見ていく。
Cloudflareダッシュボードのプロジェクト画面に、HTMLファイルなどをドラッグ&ドロップするとそのままデプロイされる。
Cloudflare公式のCLIツール wrangler を、ローカル(Claude Code経由など)から実行してデプロイする。
Cloudflareダッシュボード上で GitHub リポジトリを連携すると、リポジトリへのpushを検知して Cloudflare側でビルド・デプロイが実行される。
GitHub Actions のワークフローファイル(YAML)に wrangler pages deploy を書き、GitHubへのpushで GitHub Actions側から Cloudflare へデプロイする。
| 観点 | ブラウザでドラッグ&ドロップ | Wrangler CLI | Git連携 | GitHub Actions |
|---|---|---|---|---|
| 事前準備 | アカウントのみ | + Node.js | + GitHub | + GitHub・APIトークン・YAML |
| 公開操作 | 手動アップロード | 手動コマンド | git push | git push |
| デプロイ自動化 | × | × | ○ | ○ |
| デプロイ前処理 | × | × | 工夫すれば可 | ○ |
| D1への発展 | 不向き | 手動なら可 | 工夫が必要 | 向いている |
| Cloudflareビルド枠 | 消費しない | 消費しない | 消費する(無料500回/月) | 消費しない |
| 初学者向け | ◎ | ○ | ○ | △ |
迷ったときの目安:
4つの中で、CGT(Git連携)と CGA(GitHub Actions)は「pushすると自動でデプロイされる」点が共通していて、最初は使い分けに迷いやすい。 ここでは少しだけ詳細に検討する。
静的ファイルだけで完結するWebアプリなら、Cloudflare PagesのGit連携が一番手軽。Cloudflare DashboardでGitHubリポジトリを選べば、pushだけで自動デプロイできる。APIトークンやGitHub ActionsのYAMLは不要。
一方で、D1マイグレーション、テスト、ビルド前処理などをデプロイ前に実行したい場合は、GitHub Actions + Wranglerの方が扱いやすい。処理の順番をYAMLに明示できるため、あとからD1を使うデータ共有型Webアプリへ発展させやすい。
ただし GitHub Actions は事前準備(APIトークン作成、Secrets登録、YAML作成)の手間がかかる。静的サイトを自動デプロイしたいだけなら、Git連携の方が早い。
Cloudflare Pages の Git連携では、Cloudflare側で build が走るため、Cloudflare Pages の build 回数を消費する。Free plan では月500回の上限がある(参考)。
GitHub Actions + Wrangler では、build や deploy コマンドの実行場所が GitHub Actions 側になるため、Cloudflare Pages の build 回数は消費しない。GitHub Actions Free の実行時間枠は Public リポジトリなら無制限、Private でも月2,000分(参考)。個人開発の通常運用(デプロイ1回あたり1〜2分程度)なら月1,000〜2,000回はデプロイできる計算で、上限に届くことはまずない。
つまり、無料枠の余裕という観点では GitHub Actions の方が有利。
Cloudflare D1を使うデータ共有型Webアプリでは、デプロイ前にDBスキーマ更新(マイグレーション)を実行することがある。Cloudflare PagesのGit連携でもD1操作は可能だが、GitHub Actionsの設定と同じくらいの手間がかかり、手軽とは言い難い。
GitHub Actionsなら、d1 migrations apply と pages deploy を別々のステップとして書ける。何をどの順番で実行しているかが見えやすく、失敗時の切り分けもしやすい。
そのため、本サイトのロードマップでは、D1を使う データ共有型Webアプリ の前に、GitHub ActionsでCloudflareに公開する 手順を体験する構成にしている。
本サイトには、Claude Code を使ってWebアプリを作り Cloudflare に公開する一連のハンズオンがロードマップとして並んでいる。順に進めることで、手動デプロイ、CLIデプロイ、Cloudflare側の自動デプロイ、GitHub Actions側の自動デプロイを段階的に体験できる構成にしている。
すでに経験済みの方法がある場合は、その次のステップから始めてもよい。
2026-05-17 (last updated: 2026-05-20) タツヲ (yto)