Node.jsの開発環境で作業する際、柔軟性が重要です。Node Version Manager (NVM)は、開発者が単一のシステム上で複数のNode.jsのバージョンを簡単にインストールおよび管理できる強力なツールです。しかし、テスト用のフォークバージョンや、パッチを適用した機能を持つバージョン、またはメインのNVMレジストリにない古いリビジョンをインストールする必要がある場合もあります。仮想マシンにカスタムバージョンのNVMまたはNode.jsをインストールする必要がある場合があります。

この記事では、カスタムバージョンのNVMをインストールする手順を説明し、それを使用してカスタムまたはローカルバージョンのNode.jsをインストールします。

カスタムバージョンをインストールする理由

カスタムバージョンをインストールするいくつかのユースケースがあります:

  • NVMまたはNode.jsのパッチやフォークをテストする。

  • 実験的な機能を持つNode.jsビルドを使用する。

  • ローカルでコンパイルされたバージョンをオフラインで使用する。

  • 特定の環境を必要とするレガシープロジェクトとの互換性。

ステップ1: カスタムバージョンのNVMをインストールする

オプション1: フォークされたリポジトリをクローンする

NVMのフォークまたはカスタムブランチで作業している場合:

git clone https://github.com/your-username/nvm.git ~/.nvm
cd ~/.nvm
git checkout your-custom-branch

次に、NVMをシェル設定に追加します:

echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.bashrc
echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"' >> ~/.bashrc
source ~/.bashrc

zshを使用している場合は、.bashrcを.zshrcに置き換えます。

✅ ヒント: nvm –versionを実行してインストールをテストします。

ステップ2: カスタムバージョンのNode.jsをインストールする

オプション1: ソースからNode.jsをインストールする

ソースからビルドしたカスタムバージョンのNode.jsがある場合:

  1. Node.jsリポジトリまたはカスタムフォークをクローンします:

git clone https://github.com/nodejs/node.git
cd node
git checkout your-custom-branch
  1. ローカルにコンパイルしてインストールします:

./configure
make -j4
make install DESTDIR=$HOME/custom-node
  1. NVMを使用してこのバージョンを「インストール」します:

nvm install v18.99.99 --lts --no-download

次に、ローカルビルドを手動でシンボリックリンクします:

nvm use v18.99.99
# or
nvm alias custom-node v18.99.99

オプション2: カスタムターボールからインストールする

事前コンパイルされたNode.jsターボールがある場合:

nvm install v18.99.99 --lts --no-download
cp -r node-v18.99.99-linux-x64 ~/.nvm/versions/node/v18.99.99

その後、通常通り使用します:

nvm use v18.99.99

トラブルシューティング

  • nvmが見つかりません: NVMへのパスがシェル設定に正しく追加されていることを確認してください。

  • 権限の問題: sudoを慎重に使用してください。NVMとNode.jsは、特権のない状態で実行されるように設計されています。

  • コンパイルエラー: すべてのビルド依存関係がインストールされていることを確認してください(build-essential、pythonなど)。

結論

カスタムバージョンのNVMまたはNode.jsをインストールすることで、開発環境を細かく制御できます。実験的な機能をテストする場合やレガシーシステムで作業する場合、これらのカスタムセットアップは非常に貴重です。上記の手順に従うことで、ニーズに合った堅牢でカスタマイズされたNode.js開発ワークフローを作成できます。