NetlifyでNodeのバージョンを新しく指定する方法
はじめに
Netlifyの管理をしばらく行っていなかったところ、サイトの更新(デプロイ)が止まっていました。
久しぶりに触ってみると、いくつか機能が変更されていたため、設定を見直すことにしました。
Netlifyでは、デプロイに失敗した場合でも、直前の成功したコミット時点の状態でサイトが生成される仕組みになっています。
参考: Manage Dependencies | Netlify Docs
今回は、Node.jsのバージョンが問題の原因かもしれないと考え、Netlify側で設定を見直してみました。
方法 1: .nvmrc ファイルで指定する
Node.jsのバージョン指定には、.node-version
または .nvmrc
ファイルを使用する方法があります。現在では、.nvmrcでの管理が主流となっています。
まず、プロジェクトのルートディレクトリで以下のコマンドを実行してください。
node -v > .nvmrc
これにより、プロジェクトのルートディレクトリに .nvmrc
ファイルが生成されます。
.nvmrc
ファイルの内容は、以下のように単純なバージョン指定のみです。
v21.0.0
このファイルをリポジトリにコミットすれば設定完了です。ただし、.gitignore
で除外されていないか確認してください。
方法 2: Netlifyの管理画面で指定する
もう1つの方法は、Netlifyの管理画面から直接バージョンを指定する方法です。
- Netlify管理画面にアクセスします。
- 管理対象のサイトを選択します。
- Site configuration → Build & Deploy → Dependency management の順に進みます。
以下の画面で、Node.jsのバージョンを指定できます。
記事執筆時点(2024年12月6日)では、12.x~20.xのバージョンを選択可能です。
指定するバージョンが実際のプロジェクトと乖離しすぎていると、デプロイに失敗する可能性がありますので、必要に応じてバージョンを確認してください。
また、Netlifyの管理画面では、対象ブランチから再デプロイを実行するボタンも用意されているので、エラーが発生した場合は試してみるとよいでしょう。
まとめ
Netlifyの管理画面から簡単にNode.jsのバージョンを指定できるのは便利です。しかし、将来的に指定したバージョンが古いままになってしまう可能性や、21.x以降の最新バージョンに対応しない場合も考えられます。
そのため.nvmrc
ファイルでバージョンを管理する方法がおすすめな現状でしょう。
.nvmrc
を使用すれば、プロジェクトごとに明確なバージョン管理が可能になります。
Discussion