Docker イメージを軽くするための設定でoutputStandalone: true
にしていた。
module.exports = { experimental: { outputStandalone: true, },
しかしpages/_middleware.ts
があると下記のエラーが出てnext build
に失敗する。
> Build error occurred [Error: ENOENT: no such file or directory, open '/Users/web/.next/server/pages/_middleware.js.nft.json'] { errno: -2, code: 'ENOENT', syscall: 'open', path: '/Users/web/.next/server/pages/_middleware.js.nft.json' } error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Next.js のバージョンを 12.0.10 にすれば直る
yarn add next@latest
package.json
"dependencies": { "next": "^12.0.10",
修正 PR はおそらくこれ。 github.com
next@12.0.10にすると node-fetch が消えるので手動で入れ直す
next@12 の時点ではnode-fetch@2.6.1が依存としてインストールされていたが、next@12.0.10では削除されていた。
アプリ内で node-fetch を import している場合は入れ直す必要がある。
yarn add node-fetch@2.6.1