デプロイ
Yurucommuのビルドとデプロイの詳細な手順です。
ビルド
フロントエンドとバックエンドをビルドします。
npm run build
これにより dist/ ディレクトリに静的ファイルが生成されます。
デプロイ
npx wrangler deploy
成功すると以下のように表示されます:
Uploaded yurucommu (X.XX sec)
Published yurucommu (X.XX sec)
https://yurucommu.your-subdomain.workers.dev
デプロイオプション
ドライラン(実際にはデプロイしない)
npx wrangler deploy --dry-run
特定の環境にデプロイ
# 開発環境
npx wrangler deploy --env development
# 本番環境
npx wrangler deploy --env production
CI/CDパイプライン
GitHub Actionsを使った自動デプロイの設定例:
.github/workflows/deploy.yml
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build
- name: Deploy to Cloudflare
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
APIトークンの取得
- Cloudflareダッシュボード > My Profile > API Tokens
- 「Create Token」をクリック
- 「Edit Cloudflare Workers」テンプレートを選択
- 生成されたトークンをGitHubのSecretsに追加
ロールバック
問題が発生した場合、前のバージョンにロールバックできます。
# デプロイ履歴を確認
npx wrangler deployments list
# 特定のバージョンにロールバック
npx wrangler rollback
ログの確認
# リアルタイムログ
npx wrangler tail
# フィルタリング
npx wrangler tail --status error
よくあるエラー
「Script too large」エラー
Workerのサイズ制限(1MB)を超えている場合:
- 不要な依存関係を削除
- コードの最適化
- Workers有料プランにアップグレード(10MB制限)
「D1 database not found」エラー
wrangler.toml のデータベースIDが正しいか確認してください。
「R2 bucket not found」エラー
バケット名が正しいか、作成済みか確認してください。