【ITニュース解説】Install NVM for Windows Without Administrator
2025年09月03日に「Dev.to」が公開したITニュース「Install NVM for Windows Without Administrator」について初心者にもわかりやすいように丁寧に解説しています。
ITニュース概要
Windows版NVMを管理者権限なしでインストールする方法を紹介。通常はインストーラーを使うが、管理者権限がない場合、zipファイルをダウンロードし、設定ファイルを作成。環境変数をユーザーレベルで設定することで、Node.jsのバージョン管理が可能になる。コマンドプロンプトから`nvm install latest`で最新版をインストールし、`nvm use`でバージョンを切り替える。
ITニュース解説
Node.jsはJavaScriptをサーバーサイドで実行するための環境で、Webアプリケーション開発に広く使われている。nvm (Node Version Manager) は、Node.jsのバージョンを簡単に切り替えて管理できる便利なツールだ。通常、Windowsでnvmを使うにはインストーラーを使うが、管理者権限が必要となる場合がある。この記事では、管理者権限がない環境でもnvmを導入する方法を解説する。
まず、nvm-windowsのリリースページから、インストーラーを使わない「nvm-noinstall.zip」というパッケージをダウンロードする。ダウンロードしたzipファイルを、書き込み可能な任意の場所に展開する。例えば、「D:_WIP\Download\nvm-noinstall」のようなフォルダが良いだろう。
次に、展開したフォルダの中に「settings.txt」という名前のテキストファイルを作成し、以下の内容を記述する。
root: D:\_WIP\Download\nvm-noinstall
path: D:\_WIP\Download\nvm-noinstall\nodejs
arch: 64
proxy: none
「root」はnvmがNode.jsのバージョンを保存する場所、「path」は現在使用するNode.jsの実行ファイルへのシンボリックリンク先を示す。「arch」はCPUのアーキテクチャ(通常は64ビット)、「proxy」はプロキシサーバーを使用する場合に設定する。プロキシサーバーを使わない場合は「none」と記述する。
続いて、展開したフォルダの中に「nodejs」という名前のフォルダを作成する。これは、「settings.txt」で指定した「path」に対応するフォルダで、現在アクティブなNode.jsのバージョンへのシンボリックリンクが作成される場所となる。
次に、コマンドプロンプトを開き、以下のコマンドを実行してNode.jsをインストールする。
nvm install latest
これにより、最新バージョンのNode.jsがダウンロードされ、nvmによって管理されるようになる。管理者権限は不要だ。
次に、環境変数を設定する。通常、環境変数の設定には管理者権限が必要だが、ユーザーレベルの環境変数であれば設定可能だ。以下の2つの環境変数をユーザー環境変数に追加する。
NVM_HOME: nvmのインストールディレクトリ(例:D:\_WIP\Download\nvm-noinstall)NVM_SYMLINK: 現在使用するNode.jsへのシンボリックリンク先(例:D:\_WIP\Download\nvm-noinstall\nodejs)
さらに、Path環境変数に以下の2つを追加する。これにより、コマンドプロンプトからnvmコマンドやnodeコマンドを実行できるようになる。
%NVM_HOME%%NVM_SYMLINK%
環境変数の設定後、コマンドプロンプトを再起動するか、新しいコマンドプロンプトを開いて設定を反映させる。
最後に、nvmが正しくインストールされたかを確認する。以下のコマンドを実行して、利用可能なNode.jsのバージョンを確認する。
nvm list available
インストール済みのバージョンを確認するには、以下のコマンドを実行する。
nvm list
Node.jsのバージョンを切り替えるには、以下のコマンドを実行する。例えば、バージョン20を使用する場合は以下のようになる。
nvm use 20
以上の手順で、管理者権限がなくてもnvmを使ってNode.jsのバージョンを管理できる。nvmを使うことで、複数のプロジェクトで異なるバージョンのNode.jsが必要な場合でも、簡単に切り替えて開発を進めることが可能になる。 もし、Node.js以外のJavaScriptランタイムに興味があれば、Bunという選択肢もある。Bunは高速で、バンドラーやトランスパイラなどのツールが内蔵されているため、より効率的な開発が可能になるかもしれない。