Open4

Amplify Hostingのnodeのバージョンを18系に上げる

yhiyhi

問題

Next.jsをAmplifyでビルド中に以下のようなエラーが発生してビルドが進まなかった

2023-12-08T00:13:34.513Z [WARNING]: error flat@6.0.1: The engine "node" is incompatible with this module. Expected version ">=18". Got "16.19.0"
yhiyhi

原因

Amplifyで使われているnodeのバージョン(v16.19.0)とプロジェクトのnodeのバージョン(v18.19.0)が違った/対応していなかった

yhiyhi

解決策

nvm useでバージョンを指定できるみたいなのでアプリの設定 > ビルドの設定から設定する

version: 1
frontend:
  phases:
    preBuild:
      commands:
+       - nvm use 18
        - yarn install
    build:
      commands:
        - yarn run build
  artifacts:
    baseDirectory: .next
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*