Next.js を Lizard にデプロイする

next build と next start を使って、Next.js を Node.js サーバーとして Lizard で実行します。この方法では、リクエスト時レンダリング、Route Handlers、Server Actions のためにサーバーを利用可能な状態に保てます。すべてのルートを事前にビルドできる場合は、代わりに Next.js静的エクスポート に従ってください。

ビルド設定

設定値
プロジェクト rootpackage.json と Next.js 設定を含むディレクトリ
ビルド scriptnext build
Start scriptnext start --hostname 0.0.0.0 --port 3000
ビルド output.next/
サービスポート3000
ランタイムNode.js

アプリを準備する

next、react、react-dom を依存関係に含めたままにし、lockfile をコミットしてください。これらのスクリプトを package.json に統合します:

{
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start --hostname 0.0.0.0 --port 3000"
  }
}

このガイドでは標準の Next.js 出力を使用します。output: 'export' には静的サーバーが必要で、output: 'standalone' には独自の server.js 起動とアセット配置が必要です。どちらもこの next start の手順をそのままでは使用しません。

.nvmrc で、22 などのサポート対象の Node メジャーバージョンを選択します。アップロードするソースから .next/、node_modules/、.env* を除外してください。必要であれば、シークレットを含まないサンプル環境ファイルは残します。

本番ビルドをローカルでテストする

npm ci
npm run build
npm run start

別のターミナルで http://localhost:3000 を開き、内部ルートをテストします。アプリに API または Server アクション がある場合は、それも実行して確認してください。開発サーバーのチェックだけを通過しても、本番ビルドが動作する証明にはなりません。

デプロイ

Lizard CLIのインストールとサインイン の後、アプリのディレクトリから次を実行します:

lizard init --name nextjs-app
lizard add --service web
lizard up --service web --port 3000
lizard logs --build --service web --json
lizard logs --service web --json
lizard ps --json

Lizard は next の依存関係を検出し、ビルドスクリプトと起動スクリプトを実行します。これらのコマンドは、サービスに既存のビルドまたは起動のオーバーライドがないことを前提としています。ローカルでのチェックを繰り返すには、デプロイ出力内の URL を使用してください。

環境変数とデータ

NEXT_PUBLIC_* の値は、ビルド中にブラウザバンドルの一部になります。認証情報はサーバー専用の変数に保持し、サービスに対して 変数とシークレット から設定してください。ビルド中にデータを取得するコードは、ビルド時にもそのデータへアクセスできる必要があります。ランタイムを再起動しても、すでに生成済みの HTML や JavaScript は変更されません。

ローカルキャッシュファイルとアップロードされたファイルは、レプリカ間で共有されるストアにはなりません。1 レプリカを超えてスケールする前に、Next.js のキャッシュ要件と Server アクション の要件を確認してください。永続的なアプリデータはデータベースまたはオブジェクトストレージに保存し、ストレージとリカバリ を読んでください。

トラブルシューティング

症状確認
Missing script: start上記の本番用起動スクリプトを追加してください。next dev はローカル開発用です。
アプリが正常状態にならない--port 3000 を起動コマンドに一致させ、0.0.0.0 にバインドしてください。
Public API URL がまだ古い値のまま新しい NEXT_PUBLIC_* の値で再ビルドしてください。
ビルドがデータベースに到達できないルートがビルド時にデータを取得しているか、その依存先がその時点で到達可能かを確認してください。
next start で static export が失敗する別の static export ガイドに従ってください。

Next.jsセルフホスティングガイド では、フレームワークレベルのキャッシュ、画像、マルチインスタンス動作を扱っています。デプロイエラーについては、サービスが常にhealthyにならない を参照してください。

September 9, 2026 のデプロイチェックとその制限については、テスト済みバージョンとクラウド結果 を参照してください。