EasyStarter logoEasyStarter

デプロイガイド

Cloudflare Workers と Pages へのデプロイ

概要

EasyStarter は Cloudflare へのデプロイに最適化されています:

  • Web: Cloudflare Pages
  • Server: Cloudflare Workers

前提条件

  1. Cloudflare アカウント
  2. 設定済みの Wrangler CLI
  3. 作成済みの D1 データベース

クイックデプロイ

# web と server を同時にデプロイ
pnpm run deploy

# 個別にデプロイ
pnpm deploy:web
pnpm deploy:server

初回デプロイ

1. 初期デプロイ

pnpm run deploy

本番環境の URL が出力されます:

  • Web: https://your-app.pages.dev
  • Server: https://your-api.workers.dev

2. 設定の更新

Server (apps/server/wrangler.jsonc):

{
	"vars": {
		"WEBSITE_URL": "https://your-app.pages.dev",
		"SERVER_URL": "https://your-api.workers.dev",
	},
}

Web (apps/web/.env.production):

VITE_SERVER_URL=https://your-api.workers.dev
VITE_APP_URL=https://your-app.pages.dev

3. 再デプロイ

pnpm run deploy

環境変数

Server シークレット

Wrangler でシークレットを設定:

cd apps/server

# 認証
npx wrangler secret put AUTH_SECRET

# OAuth
npx wrangler secret put GITHUB_CLIENT_ID
npx wrangler secret put GITHUB_CLIENT_SECRET
npx wrangler secret put GOOGLE_CLIENT_ID
npx wrangler secret put GOOGLE_CLIENT_SECRET

# メール
npx wrangler secret put RESEND_API_KEY

データベースマイグレーション

本番環境の D1 でマイグレーションを実行:

cd apps/server
pnpm db:migrate --remote

カスタムドメイン

  1. Cloudflare Dashboard → Pages → プロジェクトへ移動
  2. 「カスタムドメイン」に移動
  3. ドメインを追加
  4. 指示に従って DNS レコードを更新

トラブルシューティング

問題解決策
CORS エラーserver 設定の WEBSITE_URL を確認
認証が動作しないAUTH_SECRET が設定されているか確認
データベースエラーdb:migrate --remote を実行

On this page