Edited at

nodenv を使って Mac に Node.js の環境を構築する

nodenv という Node.js のバージョンマネージャを使う。 Node.js のバージョンマネージャとしては creationix/nvm やら hokaccha/nodebrew などがある。どれも使いやすいので好みで選んで問題ないが、 nodenv は ruby のバージョンマネージャである rbenv/rbenv のクローンであり同じコマンド設計なので、 rbenv や pyenv や plenv に慣れている・合わせたい人にオススメ。


nodenv をインストールする

nodenv をホームディレクトリの .nodenv にクローンする。

$ git clone git://github.com/nodenv/nodenv.git ~/.nodenv


nodenv にパスを通す

zsh であれば、 .zshrc とか。 bash であれば、 .bash_profile とか。

$ echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bash_profile

$ echo 'eval "$(nodenv init -)"' >> ~/.bash_profile

つまり、以下の設定が記述されていればOK。

export PATH="$HOME/.nodenv/bin:$PATH"

eval "$(nodenv init -)"

シェルを再起動すると nodenv が使えるようになる。


node-build をインストールする

nodenv/node-build という nodenv のプラグインをインストールすることで、 nodenv installnodenv uninstall が使えるようになる。ホームディレクトリの .nodenv 配下に plugins フォルダがあるので、その中にクローンする。

$ git clone https://github.com/nodenv/node-build.git ~/.nodenv/plugins/node-build

プラグインのロードのため、シェルの再起動もとい nodenv の再ロード( nodenv init )が必要。


nodenv で Node.js をインストールする

以下のようにバージョンを指定して Node.js をインストール。

$ nodenv install 12.6.0

$ nodenv install 10.0.0

すると、 ~/.nodenv/versions/ 配下にインストールしてきた Node.js が配置される。インストールしてきた後は shim のリフレッシュをしておく。

$ nodenv rehash


使う Node.js を指定する

あとは、実際に使う Node.js を指定する。グローバルに指定したいのであれば、 nodenv global を。ローカルで指定したいのであれば nodenv local を使う。 nodenv local を実行すると、カレントディレクトリに .node-version というファイルが作成され、そこに指定したバージョンが書かれている。これによって、そのプロジェクトでは .node-version に書かれたバージョンを参照するようになる。

$ nodenv global 12.6.0

$ nodenv local 12.6.0

指定したあとに、パスが .nodenv 配下の node を向いていればOK。

$ which nodenv

# /Users/1000ch/.nodenv/shims/nodenv


Node.js をアンインストールする

nodenv を使ってインストールした Node.js は、以下のようにしてアンインストールする。

$ nodenv uninstall 12.6.0

そのままですね。