📦

AmplifyホスティングでNode.jsバージョンを変更する方法

2023/11/23に公開

Amplifyを使っていると、Node.jsのバージョンによってデプロイできないことがあります。
今回は、AmplifyホスティングでNode.jsのバージョンを変更する方法を紹介します。

デフォルトイメージを変更すれば良い

結論から言いますと、
Amplifyホスティングで使用しているデフォルトイメージを変更すれば良いです。

ここではAWS Amplify Consoleのデフォルトイメージを変更する方法を紹介します。

  1. AWS Amplify Consoleのコンソールを開き、左メニューのアプリの設定を開きます。そして、その中にあるビルドの設定を開きます。
  2. 下の方にBuild image settingsという項目があるので、そこでデフォルトイメージを変更します。
  3. デフォルトではAmazon linux:2 が選択されていますが、構築イメージに変更します。


4. 更新をして、再度ビルドを実行します。

これでエラーが発生しなくなります。
デプロイも無事完了できるようになります。

こんな場合に役立つ

例えば最新版のAstroを使ってサイトを構築する場合を考えます。バージョンは^3.1.0です。

Amplifyホスティングでビルドすると、以下のようなエラーが発生します。

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

パッケージインストールする際に起きるエラーですが、Astroに対応しているNode.jsバージョンではないのでアップグレードしてくれよっていう内容です。
見る限り、デフォルトのNode.jsバージョンは16.19.0のようです。

解決策としては、Amplifyデフォルトで使用しているNode.jsバージョンを変更することです。

さいごに

普段はそこまでデプロイ環境を意識することがないので、少し手間取りました。
同じ状況になった場合、参考にしてください。

参考

以下のIssueを参考にしました。最後の方に解決策が書かれています。
https://github.com/aws-amplify/amplify-hosting/issues/3754

Discussion