Next.js をデプロイする
ロリポップ!デプロイナウは、Next.js の standalone 出力(output: 'standalone')でのサーバー実行に対応しています。
公開するときは、フレームワークに next を選びます。
lolipop deploy --name <name> --framework next対話形式でプロジェクトを作る場合も、フレームワークの選択で next を選びます。
利用できるフレームワーク名は lolipop frameworks list で確認できます。
デフォルトのビルド設定
フレームワークに next を選ぶと、次のビルド設定が適用されます。
- インストールコマンド:
npm ci --ignore-scripts - ビルドコマンド:
npm run build - 出力ディレクトリ:
.next/standalone
変更したいときは、プロジェクト作成時に指定するか、作成後に build-config update で更新します。
lolipop project create --name <name> --framework next --install "pnpm install" --build "pnpm build"
lolipop build-config update --project <id> --build "pnpm build"next.config の設定
next.config で output: 'standalone' を設定します。
// next.config.ts
import type { NextConfig } from 'next'
const nextConfig: NextConfig = {
output: 'standalone',
}
export default nextConfigoutput:'standalone'を設定します。設定しないとデプロイが失敗します。next.config.jsの場合も同じ値を設定します
モノレポではルートを指定する
Next.js アプリがリポジトリのサブディレクトリにある場合は、ビルドのルートをアプリのディレクトリに合わせます。
lolipop deploy --name <name> --framework next --root apps/web既存プロジェクトの設定は build-config update で変更できます。
lolipop build-config update --project <id> --root apps/web対応していない機能
| 機能 | 代わりの方法 |
|---|---|
after() で応答を返した後に処理を実行する | 応答を返す前に await で処理の完了を待つ |
環境変数や .env の扱いは環境変数を参照してください。