nvm の使い方

ネットの言葉で nvm と言えば "Never mind" (「やっぱり、いいや。今言ったこと忘れて、気にしないで」っぽい意味です。) です。

でも、このページで紹介する nvm は意味が違って、Node.js のバージョン管理を行うためのソフトウェアツールです。

1. nvm とは?

nvm は Node Version Manager (ノード・バージョン管理ツール) の意味です。nvm を使うとひとつのシステム内に 複数のバージョンの Node.js をインストールしておき、必要に応じてバージョンを切り替えて使えるようになります。

MIT ライセンスで公開されており、誰でもフリーで使うことができます。

ただし、Mac と Linux にのみ対応していて、Windows には対応していません。Windows で nvm を使うには、 WSL (Windows Subsystem for Linux) を使うか nvm-windows などの他のツールを使う必要があります。

nvm-windows については 「nvm for Windows の使い方」をみてください。

このサイトでは macOS を使う前提で書いています。

最新情報については、本家のサイトを参照してください。

GitHub - nvm

2. nvm のインストール方法

nvm をインストールするには、ターミナルで次のコマンドを実行します。

$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

ただし、この中で v0.35.0 の部分は nvm のバージョンです。 実際にインストールするときには最新バージョンに置き換えてください。

インストールできたら、ターミナルを起動し直せば、nvm コマンドが使用できます。

3. nvm のコマンド

3-1. node のバージョン確認コマンド

インストール可能な Node.js のバージョン一覧を表示するには、nvm ls-remote コマンドを実行します。

もし利用可能な Node.js の LTS バージョンのみを確認するには、nvm ls-remote --lts とします。

実際に実行すると次のようになります。

$ nvm ls-remote --lts
       ...
       v10.16.1   (LTS: Dubnium)
       v10.16.2   (LTS: Dubnium)
       v10.16.3   (Latest LTS: Dubnium)

ちなみに、バージョンのリストはズラッと長い結果が返ります。例えば最後の5行だけを表示するには、 tail コマンドと組み合わせて次のようにできます。

$ nvm ls-remote --lts | tail -n5
       v10.15.3   (LTS: Dubnium)
       v10.16.0   (LTS: Dubnium)
       v10.16.1   (LTS: Dubnium)
       v10.16.2   (LTS: Dubnium)
       v10.16.3   (Latest LTS: Dubnium)

先頭行が欲しい時は head コマンドと組み合わせます。

また、それぞれのメジャーバージョンで最新版を確認するには grep を使います。

$ nvm ls-remote --lts | grep Latest
         v4.9.1   (Latest LTS: Argon)
        v6.17.1   (Latest LTS: Boron)
        v8.16.1   (Latest LTS: Carbon)
       v10.16.3   (Latest LTS: Dubnium)

現在、システムにインストールされている Node のバージョンを確認するには、nvm ls コマンドを実行します。

$ nvm ls
->      v8.16.1
       v10.16.3
         system
default -> v10.16.3
...

最初のバージョン番号のリストと system の箇所が nvm で管理されている Node.js のバージョンです。

system バージョンというのは、nvm を使わないでシステムにインストールした Node のことです。

-> でポイントされているバージョンが、現在使用中の Node.js です。

3-2. node のインストールコマンド

nvm コマンドの install オプションで、Node.js をインストールできます。

このとき install に続けてバージョンを指定します。例えばバージョン v10.16.3 をインストールするには、nvm install v10.16.3 とします。

最新版をインストールするには nvm install node とします。

nvm を使ってインストールした Node.js は nvm の管理下に置かれて、自由にバージョンを切り替えられるようになります。

$ nvm install v8.16.1
Downloading and installing node v8.16.1...
...
Computing checksum with shasum -a 256
Checksums matched!
Now using node v8.16.1 (npm v6.4.1)
$ nvm ls
->      v8.16.1
       v10.16.3
         system
default -> v10.16.3
...
$ node -v
v8.16.1

インストールが終わると、自動的にインストールしたバージョンの Node.js が使われるように設定されます。

3-3. 使う node のバージョンを切り替えるコマンド

使用する Node.js のバージョンを切り替えるには nvm use バージョン とします。

例えば、次の例では nvm ls コマンドで、 v8.16.1v10.16.3system がインストールされていて、v10.16.3 が使用中であることがわかります。

$ nvm ls
        v8.16.1
->     v10.16.3
         system

そこで、使用する Node.js のバージョンを v8.16.1 に切り替えるには次のコマンドを実行します。

$ nvm use v8.16.1
Now using node v8.16.1 (npm v6.4.1)

nvm ls コマンドで確認すると、確かに -> で指し示されており、 node -v でバージョンを確認しても確かに v8.16.1 になっています。

$ nvm ls
->      v8.16.1
       v10.16.3
         system
default -> v10.16.3
...
$ node -v
v8.16.1

このように、nvm を使うと好きなバージョンの Node.js をシステムにインストールして、必要に応じて好きなバージョンに切り替えて使うことができます。

以上で nvm の基本的な使い方について説明しました。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Node.js 入門