フレームワークガイド
各ガイドでは、種類ごとの典型的なアプリを Git リポジトリからデプロイします。最小限のアプリ、Zenavo が検出する内容、必要な設定、よく見かける間違いを紹介します。
| ガイド | 対象 |
|---|---|
| Next.js | App Router または Pages Router の Next.js、next start または output: 'standalone' |
| Node.js と Express | Express、Fastify、Koa など任意の Node.js サーバー |
| Python | FastAPI、Django、Flask |
| Go | net/http、Gin、Echo、Fiber など任意の Go サーバー |
| Laravel | PHP-FPM と nginx で動く Laravel、マイグレーションと Vite を含む |
| Spring Boot | Maven または Gradle の Spring Boot |
| 静的サイト | プレーンな HTML とビルドしたサイト:Vite、React、Vue、Astro、Hugo の出力 |
どのガイドも、サーバーとプロジェクトがあることを前提にしています。クイックスタートを参照してください。
すべてに共通すること
- Dockerfile がなければ zbpack がアプリをビルドします。 デプロイ前に Build Plan Preview で検出結果を確認してください。ルートディレクトリに
Dockerfileがあれば、代わりにそれをそのまま使います。 0.0.0.0と$PORTで待ち受けてください。 Zenavo はPORTをサービスのポート(zbpack のビルドでは 8080)に設定します。localhostや127.0.0.1だけで待ち受けるサーバーには到達できず、デプロイが healthy になりません。- 設定は変数から。 サービスの Variable タブで設定します。データベースの接続情報は
<NAME>_CONNECTION_STRINGなどで届きます(データベース)。変数の変更は次のデプロイで反映されます。 - ファイルシステムは保持されません。 デプロイや再起動のたびにリセットされます。アップロードなど残す必要のあるファイルはボリュームか、データベースやオブジェクトストレージに置いてください。
- モノレポでは、サービスの Root Directory をアプリのフォルダーにし、Watch paths でそこが変わったときだけビルドするようにします。