⚙️

AmplifyでNode.jsバージョンを変更する

に公開

AWS AmplifyホスティングでNode.jsのバージョンが原因でデプロイに失敗する場合の解決方法を紹介します。

解決方法

Amplifyのビルドイメージを変更することで、Node.jsバージョンを指定できます。

手順

  1. AWS Amplify Consoleを開く

    • 左メニュー >「アプリの設定」>「ビルドの設定」
  2. Build image settingsを変更

    • デフォルト: Amazon linux:2
    • 変更先: 構築イメージ(Docker Hubのnodeイメージ)
  3. イメージを選択

  1. 更新して再ビルド

具体的なユースケース

問題: Astro v3.1.0のデプロイエラー

最新版のAstro(^3.1.0)を使用している場合、以下のエラーが発生します。

Node.js v16.19.0 is not supported by Astro!
Please upgrade Node.js to a supported version: ">=18.14.1"

原因: AmplifyのデフォルトNode.jsバージョンはv16.19.0で、Astroの要求バージョン(>=18.14.1)を満たしていない。

解決: ビルドイメージをnode:18.14.1以上に変更する。

まとめ

Amplifyホスティングでは、ビルドイメージを変更することでNode.jsバージョンをコントロールできます。デプロイエラーが発生した場合は、パッケージの要求バージョンとAmplifyのデフォルトバージョンを確認しましょう。

参考

以下のIssueに解決策が記載されています。
https://github.com/aws-amplify/amplify-hosting/issues/3754

Discussion