Windows10でnode.jsのバージョン管理ができるようにしてみた!(WSL2 → Ubuntu → nvm)
目的
Windows10で、複数のバージョンのnode.jsを使いたい。
例えば、このフォルダではバージョン14、こちらのフォルダでは12、といった感じ。
環境は、Windows10(Home 20H2)。
なお、通常のnode.jsをインスールする方式だと、Windows10に1種類のバージョンしかインストールできない。
(普通のアプリと同じ)
最初、上手く行かない
node.jsの複数バージョン管理システム、nodenvというのがあるとのことで、Git Bash for Windowsでインストールしてみようとするも、途中から書いてある通りに行かない…。
https://qiita.com/1000ch/items/41ea7caffe8c42c5211c
Macでは問題なく行けるようだが、Windowsはダメらしい。この辺は、OSのベースのシステムが違うためだと思われる。やはり黒い画面を使うのは、LinuxベースのMacがスムーズ。
いっそのことMacを買ってやろうかと思ったが、もう少しWindowsで試行錯誤してみることに。
そして、なんとか上手く行きました!
手順
- WSL2(Windows Subsystem for Linux 2)をインストール
- Ubuntuのシェル(黒い画面)を使って、nvm(Node Version Manager)をインストール
- node.jsをインストール
WSL2をインストール
マイクロソフト公式のドキュメントがあるので、それを見てインストール。
「簡略化インストール」はまだWindows10のバージョンが足りないので、普通に「手動インストール」の手順で進めていく。
「手順6」のLinuxディストリビューションは、Ubuntu 18.04 を選択。
(安定してそうな気がしたという理由)
ついでに、Windows ターミナルもインストール。
https://docs.microsoft.com/ja-jp/windows/wsl/install-win10
Ubuntuのシェルを使って、nvmをインストール
こちらもマイクロソフト公式のドキュメントがあるので、それを見て。
https://docs.microsoft.com/ja-jp/windows/nodejs/setup-on-wsl2
ただ、このドキュメントには1箇所、不備がありました。
nvm、node.js、および npm をインストールするの以下のコマンドを実行した後です。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
その後の手順で「command -v nvm」を入力しても、反応がない。
シェルを閉じて、開き直しても反応がない。
原因は、設定ファイル「.bashrc」に書き込まれた情報が、読み込まれていない為でした。
これを読むには、もうひとつの設定ファイル「.bash_profile」に以下の追記をして保存。そして、もう一度シェルを開き直すとOKでした。
成功すると、Ubuntuシェルのユーザ名が緑色になります。
「.bash_profile」に追記します。慣れないvimを使います。
if [[ -f ~/.bashrc ]] ; then
. ~/.bashrc
fi
参考:今日も窓辺でプログラム
なお、「.bash_profile」はログイン時に読み込まれる設定ファイルです。なので、シェルを開き直すと修正が反映される仕組みです。
これでコマンド「nvm」が使えるようになったはずです!
このnvmを使うことで、別バージョンのnode.jsを管理したり、フォルダごとに使用するバージョンを設定することができます。
node.jsをインストール
引き続き、ドキュメントを読みながら、node.jsのインスールを進めていってください。
その他、補助的なWSL2のTips
エイリアスの設定
WSL2を使うと、Ubuntuのシェルを使って、Windowsにアクセスできます。
その場合、シェルのルートから見ると、以下にCドライブがマウントされています。
/mnt/c/
毎回移動するのはめんどくさいので、エイリアスを設定します。コマンドのショートカットのようなものです。
「.bashrc」に追記します。保存して、シェルを立ち上げ直します。
alias cdc='cd /mnt/c/Users/nisimaki/Desktop'
これで、コマンドで「cdc」と入力すると、Cドライブのデスクトップに移動できます。
こんな感じで、いろいろなコマンドをショートカットコマンドにできるので、設定してみるとよいと思います。
こちらの記事が参考になります。
https://qiita.com/yutat93/items/b5bb9c0366f21bcbea62
見た目を少しかっこよくする
Ubuntuのシェルのウィンドウの上を右クリックすると、「プロパティ」から設定を更新することができます。
「フォント」は「MS ゴシック」、これ一択です。なぜなら、他のフォントは日本語が化けるから。
また、「画面の色」タブで、不透明度を90%程度にすると、ウィンドウが半透明になってかっこいいのでオススメです。
さて、今回いろいろと試行錯誤しましたが、なんとかWSL2でnode.jsのバージョン管理をできるようになりました。黒い画面とも、少し仲良くなれたような気がします。
この記事が、同じように迷っている方の参考になれば幸いです!
それでは、また!