GitHub

デプロイ

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トークンの取得

  1. Cloudflareダッシュボード > My Profile > API Tokens
  2. 「Create Token」をクリック
  3. 「Edit Cloudflare Workers」テンプレートを選択
  4. 生成されたトークンをGitHubのSecretsに追加

ロールバック

問題が発生した場合、前のバージョンにロールバックできます。

# デプロイ履歴を確認
npx wrangler deployments list

# 特定のバージョンにロールバック
npx wrangler rollback

ログの確認

# リアルタイムログ
npx wrangler tail

# フィルタリング
npx wrangler tail --status error

よくあるエラー

「Script too large」エラー

Workerのサイズ制限(1MB)を超えている場合:

「D1 database not found」エラー

wrangler.toml のデータベースIDが正しいか確認してください。

「R2 bucket not found」エラー

バケット名が正しいか、作成済みか確認してください。