Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

既存プロジェクトのデプロイ

最終更新 Markdown で表示Agent セットアップ

Wrangler はフレームワークを自動検出し、Cloudflare Workers 向けにプロジェクトを設定できます。設定ファイルを手で用意したりアダプターをインストールしたりせず、既存プロジェクトを 1 コマンドでデプロイできます。

仕組み

Wrangler 設定ファイルがないプロジェクトディレクトリで wrangler deploy または wrangler setup を実行すると、Wrangler は次を行います。

  1. フレームワークを検出する - プロジェクトを解析し、使っているフレームワークを特定します
  2. 確認を求める - 検出した設定を表示し、変更前に確認します
  3. アダプターをインストールする - フレームワークに必要な Cloudflare アダプターをインストールします
  4. 設定を生成する - 適切な設定で wrangler.jsonc を作成します
  5. package.json を更新する - deploypreviewcf-typegen などのスクリプトを追加します
  6. git を設定する - .gitignore に Wrangler 固有のエントリを追加します

対応フレームワーク

自動設定は次のフレームワークに対応しています。

フレームワーク アダプター / ツール 備考
Next.js vinext Cloudflare Workers 向けに vinext を設定し、必要な Vite と Wrangler の設定を追加します。
Astro @astrojs/cloudflare astro add cloudflare を自動実行します
SvelteKit @sveltejs/adapter-cloudflare sv add sveltekit-adapter を自動実行します
Nuxt 組み込みの Cloudflare プリセット
React Router Cloudflare Vite プラグイン
Solid Start 組み込みの Cloudflare プリセット
TanStack Start Cloudflare Vite プラグイン
Angular
Analog 組み込みの Cloudflare プリセット
Vite Cloudflare Vite プラグイン
Vike
Waku
静的サイト なし index.html がある任意のディレクトリ

React や Vue の SPA など、ほかのプロジェクトでも自動設定が動くことがあります。wrangler deploy または wrangler setup を実行し、検出されるか確認してください。

作成・変更されるファイル

自動設定が走ると、次のファイルが作成または変更されることがあります。

wrangler.jsonc

フレームワークに合った設定で、新しい Wrangler 設定ファイルが作られます。

{
	"$schema": "node_modules/wrangler/config-schema.json",
	"name": "my-project",
	"main": "dist/_worker.js/index.js",
	// Set this to today's date
	"compatibility_date": "2026-09-20",
	"compatibility_flags": ["nodejs_compat"],
	"assets": {
		"binding": "ASSETS",
		"directory": "dist",
	},
	"observability": {
		"enabled": true,
	},
}
"$schema" = "node_modules/wrangler/config-schema.json"
name = "my-project"
main = "dist/_worker.js/index.js"
# Set this to today's date
compatibility_date = "2026-09-20"
compatibility_flags = [ "nodejs_compat" ]

[assets]
binding = "ASSETS"
directory = "dist"

[observability]
enabled = true

正確な設定はフレームワークによって異なります。

package.json

package.json に次のスクリプトが追加されます。

{
	"scripts": {
		"deploy": "npm run build && wrangler deploy",
		"preview": "npm run build && wrangler dev",
		"cf-typegen": "wrangler types"
	}
}

.gitignore

Wrangler 固有のエントリが追加されます。

# wrangler files
.wrangler
.dev.vars*
!.dev.vars.example

.assetsignore

出力ディレクトリに Worker ファイルを生成するフレームワークでは、静的アセットのアップロードから除外するため .assetsignore が作られます。

_worker.js
_routes.json

自動設定を使う

自動設定でデプロイする

既存プロジェクトをデプロイするには、プロジェクトディレクトリで wrangler deploy を実行します。

npx wrangler deploy

Wrangler はフレームワークを検出し、適用する設定を表示し、変更とデプロイの前に確認を求めます。

デプロイせずに設定する

デプロイせずにプロジェクトを設定するには、wrangler setup を使います。

npx wrangler setup

デプロイ前に生成された設定を確認したいときに便利です。

ドライランで変更内容を確認する

ファイルを変更せず、どのような変更が入るかを見るには:

npx wrangler setup --dry-run

生成される設定の要約が出力されます。

非対話モード

確認プロンプトを飛ばすには、--yes フラグ を使います。

npx wrangler deploy --yes

妥当なデフォルトで設定が自動適用されます。CI/CD 環境や、検出された設定を確認せずに受け入れたいときに便利です。

ダッシュボードからリポジトリをインポートする

Cloudflare ダッシュボードから GitHub または GitLab のリポジトリをインポートすると、autoconfig は非対話で走ります。リポジトリに Wrangler 設定ファイルがない場合、Workers Builds が必要な設定のプルリクエストを作成します。

PR には、上で説明した設定変更がすべて含まれます。マージ前にテストできるよう、プレビューデプロイも生成されます。マージすると、プロジェクトはデプロイできる状態になります。

詳細は 自動プルリクエスト を参照してください。

自動設定をスキップする

自動設定を走らせたくない場合は、wrangler deploy を実行する前に、有効な Wrangler 設定ファイル(wrangler.tomlwrangler.json、または wrangler.jsonc)をプロジェクトに置きます。

フレームワークガイド の各ガイドに従い、手動で設定することもできます。

Next.js の設定

Next.js プロジェクトでは、自動設定は Cloudflare Workers 向けのデフォルトデプロイパスとして vinext を使います。生成される設定は vinext と Vite の依存関係を追加し、Cloudflare Workers の設定を作り、開発・ビルド・デプロイ用の package スクリプトを追加します。

vinext は Incremental Static Regeneration(ISR)、"use cache"unstable_cache などの Next.js キャッシュ機能に対応しています。本番アプリケーションでは、必要なキャッシュバックエンドを生成された Workers プロジェクトに設定します。詳細は vinext のキャッシュ を参照してください。

vinext ではなく OpenNext アダプターが必要な場合は、OpenNext アダプターガイド に従い手動で設定します。

トラブルシューティング

複数のフレームワークが検出された

Cloudflare ダッシュボードの Workers Builds からリポジトリをインポートすると、プロジェクトに複数のフレームワークがある場合は自動設定が失敗します。解決するには、ルートディレクトリ を、フレームワークが 1 つだけのパスに設定します。モノレポについては モノレポのセットアップ を参照してください。

ローカルで wrangler deploy または wrangler setup を実行した場合、複数のフレームワークが検出されると、どれを使うか確認されます。

フレームワークが検出されない

フレームワークが検出されない場合は、package.json にそのフレームワークが依存関係として含まれていることを確認します。

設定がすでに存在する

Wrangler 設定ファイルがすでに存在する場合、自動設定は走りません。再設定するには、既存の設定ファイルを削除してから、もう一度 wrangler deploy または wrangler setup を実行します。

ワークスペース

モノレポと npm / yarn / pnpm ワークスペースの対応は、現時点では限定的です。Wrangler はコマンドを実行したプロジェクトディレクトリを解析しますが、ワークスペースルートにインストールされた依存関係は検出しません。フレームワークが個別プロジェクトの package.json ではなく、ワークスペースルートの package.json に依存関係として書かれていると、フレームワーク検出が失敗することがあります。

問題があれば Wrangler の GitHub リポジトリ に報告してください。

役に立ちましたか?