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

Next.jsのPreview Mode時はAnalyticsを無効化する

cookieの__next_preview_dataキーで判定

PWAアプリにクイックショートカットを追加する

manifest.jsonにshortcutsを追加

Next.js 10.0.1 + React 17.0の環境でTypeError: Object(...) is not a functionエラーが発生

一つ前のReact 16.13に下げてみたらエラーが解消された

Next.jsプロジェクトにTypescriptを導入する

チュートリアルが充実してる

Next.js + typescriptでpathsのエイリアスがModule not foundになる

next.config.jsに追記する必要があった