🏖️

NetlifyでNodeのバージョンを新しく指定する方法

2024/12/06に公開

はじめに

Netlifyの管理をしばらく行っていなかったところ、サイトの更新(デプロイ)が止まっていました。
久しぶりに触ってみると、いくつか機能が変更されていたため、設定を見直すことにしました。

Netlifyでは、デプロイに失敗した場合でも、直前の成功したコミット時点の状態でサイトが生成される仕組みになっています。

参考: Manage Dependencies | Netlify Docs

今回は、Node.jsのバージョンが問題の原因かもしれないと考え、Netlify側で設定を見直してみました。

方法 1: .nvmrc ファイルで指定する

Node.jsのバージョン指定には、.node-version または .nvmrc ファイルを使用する方法があります。現在では、.nvmrcでの管理が主流となっています。

まず、プロジェクトのルートディレクトリで以下のコマンドを実行してください。

node -v > .nvmrc

これにより、プロジェクトのルートディレクトリに .nvmrc ファイルが生成されます。
.nvmrc ファイルの内容は、以下のように単純なバージョン指定のみです。

.nvmrc
v21.0.0

このファイルをリポジトリにコミットすれば設定完了です。ただし、.gitignoreで除外されていないか確認してください。

方法 2: Netlifyの管理画面で指定する

もう1つの方法は、Netlifyの管理画面から直接バージョンを指定する方法です。

  1. Netlify管理画面にアクセスします。
  2. 管理対象のサイトを選択します。
  3. Site configuration → Build & Deploy → Dependency management の順に進みます。

以下の画面で、Node.jsのバージョンを指定できます。

記事執筆時点(2024年12月6日)では、12.x~20.xのバージョンを選択可能です。
指定するバージョンが実際のプロジェクトと乖離しすぎていると、デプロイに失敗する可能性がありますので、必要に応じてバージョンを確認してください。

また、Netlifyの管理画面では、対象ブランチから再デプロイを実行するボタンも用意されているので、エラーが発生した場合は試してみるとよいでしょう。

まとめ

Netlifyの管理画面から簡単にNode.jsのバージョンを指定できるのは便利です。しかし、将来的に指定したバージョンが古いままになってしまう可能性や、21.x以降の最新バージョンに対応しない場合も考えられます。

そのため.nvmrc ファイルでバージョンを管理する方法がおすすめな現状でしょう。
.nvmrc を使用すれば、プロジェクトごとに明確なバージョン管理が可能になります。

Discussion