nvmとは何か?Node.jsのインストールと最新の安定版にアップデートする方法|バージョン指定と変更(npm)

what it nvm Node-js
記事内に広告が含まれていることがあります。

Node.jsをインストールしたり、既にインストール済みのNode.jsを最新の安定版にアップデートしたり、バージョンを変更したりする便利ツールとしてnvmがあります。

nvmとは何か?やnvmを使ってNode.jsのバージョンを管理する方法についてまとめています。

なお、Node.jsのパッケージ管理ツールであるnpm(node package manager)は、Node.jsにバンドルしているので、Node.jsのバージョンを切り替えれば、npmもそれに合わせて最新版などに切り替わります。

nvmとは何か?

nvmとはNode.jsのバージョンを管理するためのツールです。Node Version Managerの略です(そのままの意味)。

MacとWindowsのどちらでも使うことができます。(サポートプラットフォームはUNIX、macOS、WindowsWSL)

 OpenJS Foundationという組織で運用されています。

nvmでできること

nvmではNode.jsのインストールやバージョンアップに関することがほとんどできます。

  1. Node.jsのインストール
    • 最新版
    • 最新の安定版
    • 過去のバージョン(バージョンを指定)
  2. Node.jsのアップデート
    • 最新版
    • 最新の安定版
    • バージョンを指定

WEBサイト上のコードをコピペして使うと古いNode.jsがインストールされてしまうこともあります。バージョンが古いと本来使えるはずのツールが使えなかったり、不本意なエラーが発生することがあります。

また、その逆も然りで、Node.jsのバージョンが新しすぎると対応しきれていないパッケージでエラーが発生することもあります。

こういった症状を改善するのに役立つのがnvmです。


nvmのインスール

nvmのインストールはコマンドで簡単にできます。なお、インストールする方法は3つあります。

nvmのインストール
  1. curlコマンドを使う
  2. wgetコマンドを使う
  3. git経由で取得する

curlとwgetによるインストール

curlとwgetはどちらもやることは同じで、github上で公開されているnvmインストール用のシェルを取得して実行します。

curlもwgetのどちらも指定したURLをダウンロードできるコマンドです。両者の違いはサポートしているプロトコルや再起的にダウンロードするかなどです。

どちらも無料のソフトウェアです。macなどインストール済みのこともありますが、Windowsなどインストールされていないものもあります。

その場合は、コマンドラインか公式サイトからファイルをダウンロードすることで簡単にインストールできます。

curlコマンドを使う

$ curl --version
curl 7.64.1 (x86_64-apple-darwin19.0) libcurl/7.64.1 (SecureTransport) LibreSSL/2.8.3 zlib/1.2.11 nghttp2/1.39.2
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

「-o-」が何をしているかについてはこちらをご参考。

wgetコマンドを使う

$ wget --version
GNU Wget 1.21.1 built on darwin19.6.0.
$ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

「-qO-」が何をしているかについてはこちらをご参考。

これらのコマンドを実行するとinstall.shファイルをダウンロードして実行します。

インストールの実例

curlを使ってインストールを実行した結果は次のようになります。

$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 14926  100 14926    0     0   171k      0 --:--:-- --:--:-- --:--:--  171k
=> Downloading nvm from git to '/Users/.nvm'
=> Cloning into '/Users/.nvm'...
remote: Enumerating objects: 347, done.
remote: Counting objects: 100% (347/347), done.
remote: Compressing objects: 100% (295/295), done.
remote: Total 347 (delta 39), reused 163 (delta 27), pack-reused 0
Receiving objects: 100% (347/347), 203.77 KiB | 4.33 MiB/s, done.
Resolving deltas: 100% (39/39), done.
* (HEAD detached at FETCH_HEAD)
  master
=> Compressing and cleaning up git repository

=> Appending nvm source string to /Users/.bashrc
=> Appending bash_completion source string to /Users/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

ホームディレクトリ直下に .nvm(~/.nvm)を作成します。そして~/.bashrcファイルに処理を書き込みます。(もしくは~/.bash_profile, ~/.zshrc, ~/.profile,)

git経由で取得する

git経由で取得するにはgithubのレポジトリをクローンファイルを指定して実行する方法です。curlやwgetよりも手間がかかります。

#nvmのレポジトリをクローンしたいディレクトリ移動してから実行
git clone https://github.com/nvm-sh/nvm.git .nvm

#ディレクトリ移動
cd ~/.nvm

#v0.38ブランチにチェックアウト
git checkout v0.38.0

#シェルスクリプトを実行
. ./nvm.sh

インストールできたか確認する

インストールできたか確認するためにnvmコマンドを実行します。その前に~/.bashrcなど設定を書き込んだファイルをsourceコマンドでリロードする必要があります。

bash: source ~/.bashrc
zsh: source ~/.zshrc
ksh: . ~/.profile

上記の例では、.bashrcに書き込んでいるので、source ~/.bashrcを実行します。次にnvm -vでバージョンが表示されたらインストールは正しくできています。

$ nvm -v
0.38.0

nvm自体のアップデート

nvm自体をアップデートする方法は大きく2つあります。

  1. nvmのgithabの公式ページで最新のバージョンをダウンロードする
  2. git経由でダウンロードする。

1のnvmのgithabの公式ページで最新のバージョンを確認する方法は、nvmのgithubサイトにアクセスして、上記のcurlやwgetで最新版をダウンロードします。

方法はインストールと同じです。

git経由でダウンロードする

git経由で最新版がリリースされているかを確認しアップデートするには、以下コマンドを実行します。

(
  cd "$NVM_DIR"
  git fetch --tags origin
  git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" $(git rev-list --tags --max-count=1)`
) && \. "$NVM_DIR/nvm.sh"



node.jsのアップデート

nvmのインストールが完了したら、node.jsのアップデートを簡単に実行することができます。

node.js最新版のインストール

nvm install node

node.js最新の安定版をインストール

nvm install --lts

ltsはLongーTerm Supportの略で長期サポート版のことです。

node.jsのバージョンを指定してインストール

インストール可能なバージョン一覧の表示

nvm ls-remote でインストール可能なバージョン一覧を表示することができます。

$ nvm ls-remote
        v0.1.14
      大幅に省略
        v16.4.0
        v16.4.1
$

node.jsのバージョンを指定してインストール

nvm install <バージョン> でnode.jsのバージョンを指定してインストールすることができます。

nvm install 6.14.4

指定したnodeのバージョンを使う

使いたいnodeのバージョンを指定するには nvm use <バージョン> を実行します。

nvm use 6.14.4

インストール済みのnodeのバージョン一覧を表示

nvm ls でインストール済みのnodeのバージョン一覧を表示することができます。

タイトルとURLをコピーしました