開発
デプロイガイド
BluePeriodのモノレポ構成における各サブプロジェクトのデプロイ手順
デプロイガイド
デプロイ方針
本プロジェクトはモノレポ構成であり、各サブプロジェクトを別々の Vercel プロジェクトとして管理・デプロイします。全プロジェクト共通で 各ディレクトリ内で vercel --prod を実行する手動デプロイ方式に統一しています。Git push での自動デプロイは無効化されています。
各ディレクトリには .vercelignore が配置されており、node_modules やビルド成果物(.next, dist)がアップロード対象から除外されています。
各プロジェクトのデプロイ
一括デプロイする場合は、プロジェクトルートで bun all:prod を実行してください(Tauriを除く全ワークスペースを順次デプロイ)。
| プロジェクト | ディレクトリ | Vercel プロジェクト名 | デプロイコマンド |
|---|---|---|---|
| アプリ本体 | next-app/ | blueperiod | cd next-app && vercel --prod |
| LP | astro/ | blueperiod-web | cd astro && vercel --prod |
| ドキュメント | fumadocs/ | blueperiod-docs | cd fumadocs && vercel --prod |
アプリケーション本体 (next-app/)
cd next-app
vercel --prodVercel プロジェクト設定:
- Root Directory: 空欄(または
./)に指定。各ディレクトリからデプロイするため、Vercel側の Root Directory は空欄で問題ありません。
ランディングページ (astro/)
cd astro
vercel --prodVercel プロジェクト設定:
- Root Directory: 空欄(または
./)に設定。
ドキュメントサイト (fumadocs/)
cd fumadocs
vercel --prodVercel プロジェクト設定:
- Root Directory: 空欄(または
./)に設定。
CI/CD によるリリースビルド(デスクトップアプリ)
タグプッシュ(v*)または手動実行で GitHub Actions がリリースビルドを自動実行します。
必要な Repository Secrets
ビルド前に GitHub > Settings > Secrets and variables > Actions > Repository secrets で以下を設定する必要があります。
| Secret | 用途 |
|---|---|
TAURI_SIGNING_PRIVATE_KEY | Tauriアップデーターの署名鍵 |
TAURI_SIGNING_PASSWORD | 署名鍵のパスワード |
NEXT_PUBLIC_SUPABASE_URL | SupabaseプロジェクトURL(next build + Desktopランタイム用) |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Supabase公開鍵(同上) |
NEXT_PUBLIC_APP_URL | アプリURL(OGタグ等) |
Desktop版プロダクションビルドでは、ビルド時に環境変数から .env ファイルを生成し、Bun Sidecarに同梱します。これにより、server.rs を変更することなくランタイム環境変数を供給できます。
注意: fork先では Secrets が引き継がれません。コントリビューターは自身で Secrets を設定する必要があります。必要な変数名は
.env.local.sampleを参照してください。