next build時に.nextディレクトリを消す

公開日時

Next.jsでSSG(静的サイト生成)を行いfirebase hostingを使って運用しているサービスがあるのだが、サイトのコンテンツ自体は十数ページほどなのにhostingのストレージ容量が250MBほどになっていることに気づいた。

てっきりビルド時に.nextディレクトリの中身は消えるものだと思っていたが消えておらず、ビルドのたびに.nextディレクトリの容量が増えていたのが原因だった。

詳しく追えていないが、もしかしたらdockerでbuildしていた影響かもしれない。

取り急ぎビルド時に.nextとoutディレクトリを削除するようにした。

  • ディレクトリ削除のためにrimrafをインストール
yarn add -D rimraf
  • package.json にclearnを追加し、build時にcleanを実行するように変更
{
  "scripts": {
    "dev": "next dev",
    "clean": "yarn run rimraf .next out",
    "build": "yarn run clean && next build && next export"
  }
}

この対応後にストレージ容量を確認したら1.6MBになった。

hosting disk

参考


Related #next.js

FigmaでSVG Octocatを作る その3

アウトライン化大事

Next.jsプロジェクトのGoogle Analytics V3をV4に更新する

トラッキングIDの差し替えのみで対応が完了した

Vercelで指定のブランチのみデプロイを実行する

Ignored Build Stepを設定した