継続的インテグレーション (CI) ビルドキャッシュの設定方法
ビルドパフォーマンスを向上させるため、Next.js はビルド間で共有されるキャッシュを .next/cache
に保存します。
継続的インテグレーション (CI) 環境でこのキャッシュを活用するには、CI ワークフローがビルド間でキャッシュを正しく永続化するように設定する必要があります。
CI が
.next/cache
をビルド間で永続化するように設定されていない場合、No Cache Detected エラーが表示される可能性があります。
以下に主要な CI プロバイダー向けのキャッシュ設定例を示します:
Vercel
Next.js のキャッシュは自動的に設定されます。特に設定は必要ありません。Vercel で Turborepo を使用している場合は、こちらを参照してください。
CircleCI
.circleci/config.yml
の save_cache
ステップを編集し、.next/cache
を含めます:
save_cache
キーがない場合は、CircleCI のビルドキャッシュ設定ドキュメントに従ってください。
Travis CI
.travis.yml
に以下を追加またはマージします:
GitLab CI
.gitlab-ci.yml
に以下を追加またはマージします:
Netlify CI
Netlify Plugins と @netlify/plugin-nextjs
を使用します。
AWS CodeBuild
buildspec.yml
に以下を追加(またはマージ)します:
GitHub Actions
GitHub の actions/cache を使用し、ワークフローファイルに以下のステップを追加します:
Bitbucket Pipelines
bitbucket-pipelines.yml
のトップレベル(pipelines
と同じレベル)に以下を追加またはマージします:
そしてパイプラインの step
セクションの caches
で参照します:
Heroku
Heroku のカスタムキャッシュを使用し、トップレベルの package.json に cacheDirectories
配列を追加します:
Azure Pipelines
Azure Pipelines のCache タスクを使用し、next build
を実行するタスクの前に以下のタスクをパイプライン yaml ファイルに追加します:
Jenkins (Pipeline)
Jenkins の Job Cacher プラグインを使用し、通常 next build
または npm install
を実行する場所に以下のビルドステップを Jenkinsfile
に追加します: