このガイドは、GitHub Actions の仕組みと、Cloudflare への自動デプロイに必要な設定をまとめたもの。具体的なワークフロー YAML は各ハンズオンを参照。
GitHub Actions は、GitHub が提供する自動化ツール。リポジトリへの push などをトリガーに、あらかじめ定義した処理を自動で実行できる。
Cloudflare へのデプロイに使う場合、流れはこうなる。
開発者
└─ git push
└─ GitHub が push を検知
└─ GitHub Actions が起動
├─ D1 マイグレーション(DB あきの場合)
└─ Cloudflare Pages へデプロイ
手動デプロイ(npx wrangler pages deploy)と比べたメリットは、push するだけで済むこと。デプロイし忘れがなくなり、ローカル環境の状態に依存しない。
GitHub Actions の処理内容は、リポジトリ内の .github/workflows/ フォルダに YAML ファイルとして記述する。
my-project/
└─ .github/
└─ workflows/
└─ deploy.yml ← ワークフローファイル
ワークフローファイルの基本構造:
on: # いつ実行するか(トリガー)
push:
branches: [main]
jobs: # 何をするか(ジョブ)
deploy:
runs-on: ubuntu-latest
steps: # ジョブの中の個別手順
- uses: actions/checkout@v4 # リポジトリをチェックアウト
- uses: cloudflare/wrangler-action@v3 # Cloudflare へデプロイ
各キーの意味は参考程度に。覚えなくてよい。
| キー | 役割 |
|---|---|
on |
トリガー条件(push、PR など) |
jobs |
実行するジョブの定義 |
steps |
ジョブ内の手順(上から順に実行) |
uses |
外部アクションの利用 |
run |
シェルコマンドの直接実行 |
ワークフローファイルは Claude Code に相談しながらゼロから作ることもできる。「GitHub Actions で Cloudflare Pages にデプロイするワークフローを作って」と伝えれば、構成に合わせたものを生成してくれる。
ただし、動作確認済みのテンプレートがあるならそちらを使う方が確実。ゼロから作ると細かいオプションの抜け漏れでハマることがある。
このハンズオンシリーズでは、実働実績のあるテンプレートを各ハンズオンに掲載している。まずはそれをそのまま使い、慣れてきたら Claude Code と相談しながらカスタマイズしていくとよいだろう。
GitHub Actions が Cloudflare を操作するには、認証情報を GitHub に登録しておく必要がある。この設定はリポジトリごとに一度だけ行う。
先に登録先の画面を開いておいて、値を取得したらその場で貼り付けていく流れで進める。
GitHub のサイトで行う
GitHub リポジトリ → Settings → Secrets and variables → Actions → New repository secret を開く。
登録するのは以下の2つ。次節以降で値を取得しながら順番に登録していく。
| Name | Value |
|---|---|
CLOUDFLARE_ACCOUNT_ID |
次節で確認する |
CLOUDFLARE_API_TOKEN |
2-3 で作成する |
Cloudflare のサイトで確認し、GitHub に登録する
Cloudflare ダッシュボード → Compute → Workers & Pages を開く。右カラムに表示される Account ID をコピーして、GitHub のサイトで CLOUDFLARE_ACCOUNT_ID として登録する。
Cloudflare のサイトで作成し、GitHub に登録する
右上 👤 アイコン → Profile → API Tokens → Create Token → Create Custom Token をクリック。
以下の権限を設定する。
| 項目 | 設定値 |
|---|---|
| Token name | 任意(例:kerokero) |
| Permissions - Account | Cloudflare Pages — Edit |
| Permissions - Account | D1 — Edit(D1 を使う場合) |
| Permissions - User | User Details — Read |
| Account Resources | Include — 自分のアカウントのみ |
Account Resources はデフォルトの All accounts のままにしない。自分のアカウントだけに絞ることで、不要なスコープを与えずに済む。
D1を使うケースの設定例
Continue to summary → Create Token をクリック。表示されたトークン文字列をコピーして(トークンは一度しか表示されない)、GitHub のサイトで CLOUDFLARE_API_TOKEN として登録する。
このガイドは概念と共通設定の説明にとどめている。具体的なワークフロー YAML(どのステップを何の順番で実行するか)は、各ハンズオンを参照。
| ハンズオン | 内容 |
|---|---|
| Claude CodeでWebアプリを作ってGitHub ActionsでCloudflareに公開する | 静的サイトのデプロイ |
| Claude CodeでDB付きWebアプリを作ってCloudflareで公開する | D1 マイグレーション+Pages デプロイ |
設定が整うと、以下のサイクルで開発が進む。
https://アプリ名.pages.dev など)で動作確認wranglerVersion: "4" を各ステップに明示しないと古いバージョン(3.90.0 等)にフォールバックすることがあるcompatibility_date は UTC 基準のため、JST の今日の日付は未来日になる場合がある — 前日以前の日付を指定する2026-05-08 タツヲ (yto)