2026 CI / SSR

2026年前端 SSR ビルド避坑:
リモート Mac 上の Next.js と Nuxt:Node メモリとビルド並列の対照表

2026.03.26 フロント/全栈・ビルド担当向け 約 7 分で読めます

対象はリモート Mac で Next.js / Nuxt の SSR をビルドするフロント/全栈です。キーワードはリモート Mac、Next.js、Nuxt、Node メモリ、ビルド並列です。OOM と遅延を減らすヒープ目安、vCPU と同時ビルド、キャッシュ掃除を表で整理しました。Turborepo チェックリストNode 環境分離と併用してください。

環境変数と削除パスはそのまま CI に転記できます。

01 メモリ上限と OOM が起きやすい閾値

痛みは三つです。ヒープ既定のまま大規模グラフで落ちること、型検査とビルドのピークが重なること、スワップで遅延だけが増えることです。

export NODE_OPTIONS=--max-old-space-size=6144 で上限を明示します。中規模は 4096〜6144MB、型・モノレポは 8192MB 付近が目安です。

項目 Next.js Nuxt 3
ヒープNODE_OPTIONS をビルド前に付与generate も同様
OOM 典型大量ページと SWCエイリアス多めの Vite
切り分け段階ビルドnitro と vite を分離

02 並列ワーカーと CPU コアの関係(対照表)

ワーカー増はメモリピークも増やします。vCPU を同時ビルドで割らないのが安全です。4 核は同時 1、8 核は 1〜2、12 核以上も 2 本上限の目安です。

vCPU 推奨同時ビルド数 備考
41メモリ競合が最も出やすい
81〜2二本ならヒープを抑えるか直列
12+2I/O とスロットリングを確認

UV_THREADPOOL_SIZE=8 はファイル I/O に効くが大きすぎると遅くなるため段階的に試します。

03 キャッシュディレクトリとクリーン戦略

Next は .next/cachenode_modules/.cache、Nuxt は .nuxt.outputnode_modules/.vite。メジャー更新後は rm -rf .next .nuxt .output node_modules から再インストールが確実です。キャッシュキーは lockfile と Node メジャーに固定し週一フルクリーンを推奨します。Vite キャッシュ最適化も参照ください。

CI 五手順

  1. df -h と空きメモリを記録。
  2. NODE_OPTIONS を一箇所で宣言し重複回避。
  3. 同時ビルドはマトリクスではなくスロットで制限。
  4. キャッシュキーに OS・アーキを含め混在させない。
  5. 失敗時はキャッシュオフの一度きり再実行で切り分け。

04 リモートノードの安定性 FAQ

引用メモ三つ。ヒープ帯 4096〜8192MB。同時ビルドは vCPU の半分超を避けキュー制御。キャッシュ安定で時間は約三〜五割短縮し得ます。

Q: 夜間だけ落ちる

負荷とスワップ変動です。同時数を下げ NODE_OPTIONS を固定しキャッシュパスを揃えてください。

Q: 消すディレクトリの差

表のパスどおり。Nuxt は generate と dev で出力が変わる点に注意です。

SSR ビルド用にメモリに余裕のあるリモート Mac ノードを選ぶ。

MacWww ではログイン不要で料金表とノード一覧を確認できます。SSH と VNC の手順はヘルプをご利用ください。継続的インテグレーション向けに Apple Silicon でヒープと並列を確保したいチームは、まずトップからプラン比較へお進みください。

リモート Mac を選ぶ(ログイン不要)