「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > NVM をマスターする: Node.js のバージョン管理を簡素化する

NVM をマスターする: Node.js のバージョン管理を簡素化する

2024 年 7 月 31 日に公開
ブラウズ:242

Mastering NVM: Simplifying Node.js Version Management

Node Version Manager (NVM) は、さまざまなプロジェクトで異なるバージョンの Node.js を頻繁に切り替える Node.js 開発者にとって不可欠なツールです。レガシー アプリケーションを保守している場合でも、最新の機能を試している場合でも、単にプロジェクトごとに異なるバージョンが必要な場合でも、NVM を使用すると作業が大幅に楽になります。このブログでは、NVM について深く掘り下げ、Node.js のバージョンを効率的に管理するための高度なテクニックとベスト プラクティスを探っていきます。

NVM を使用する理由

NVM の高度な使用法に入る前に、NVM を使用する必要がある理由を簡単にまとめてみましょう:

  1. バージョン管理: 複数の Node.js バージョンを簡単に切り替えます。
  2. 環境の分離: 各プロジェクトが競合せずに必要な Node.js バージョンを使用していることを確認します。
  3. 利便性: Node.js バージョンのインストールと更新を簡素化します。

NVMのインストール

Unix ベースのシステムの場合 (Linux/macOS)

Unix ベースのシステムで NVM を使い始めるには、NVM をインストールする必要があります。インストールプロセスは簡単です:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash

スクリプトを実行した後、.bashrc、.zshrc、または .profile ファイルに次の行を追加します。

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

シェル設定をリロードします:

source ~/.bashrc  # or ~/.zshrc, ~/.profile depending on your shell

Windowsの場合

Windows の場合は、Windows 環境に合わせて調整された同様のツールである nvm-windows を使用できます。

  1. nvm-windows リポジトリからインストーラーをダウンロードします。
  2. インストーラーを実行し、画面上の指示に従います。

インストール後、新しいコマンド プロンプトを開いてインストールを確認します:

nvm version

基本的な使い方

NVM がインストールされたら、いくつかの基本的なコマンドを説明します:

Node.js バージョンのインストール

任意の Node.js バージョンを指定してインストールできます:

nvm install 14.20.1  # Install Node.js 14.20.1
nvm install 18.0.0   # Install Node.js 18.0.0

インストールされているバージョンの一覧表示

インストールされているすべての Node.js バージョンを表示するには:

nvm ls

特定のバージョンの使用

現在のセッションの特定のバージョンに切り替えます:

nvm use 14.20.1

デフォルトのバージョンの設定

すべての新しいシェルで使用されるデフォルトの Node.js バージョンを設定します:

nvm alias default 14.20.1

高度な NVM の使用法

基本については理解できたので、高度な NVM テクニックを見てみましょう。

.nvmrc ファイルの操作

.nvmrc ファイルでは、プロジェクトの Node.js バージョンを指定できます。プロジェクトのルート ディレクトリに、必要な Node.js バージョンを含む .nvmrc ファイルを作成します:

14.20.1

プロジェクト ディレクトリに移動したら、次のコマンドを使用して指定したバージョンに切り替えます:

nvm use

ディレクトリに cd したときにバージョンを自動的にロードするシェル関数を使用して、このプロセスを自動化できます。

# Add this to your .bashrc or .zshrc
autoload -U add-zsh-hook
load-nvmrc() {
  if [[ -f .nvmrc ]]; then
    nvm use
  fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc

特定の Node.js バリアントのインストール

NVM を使用すると、io.js やさまざまな LTS バージョンなど、Node.js のさまざまなバリアントをインストールできます:

nvm install iojs
nvm install --lts

新しいバージョンの確認

Node.js バージョンを最新の状態に保つ:

nvm ls-remote

このコマンドは、利用可能なすべての Node.js バージョンを一覧表示し、新しいバージョンがリリースされているかどうかを確認できます。

Node.js バージョンのアンインストール

未使用の Node.js バージョンを削除してスペースを解放します:

nvm uninstall 14.20.1

スクリプトの自動化

自動化および CI/CD パイプラインの場合、スクリプト内で NVM を使用できます。 bash スクリプトで NVM を使用する方法の例を次に示します:

#!/bin/bash

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

nvm install 14.20.1
nvm use 14.20.1

node -v

グローバルパッケージの管理

グローバル パッケージは Node.js バージョンごとにインストールされます。これを効率的に管理するには、nvm の reinstall-packages コマンドを使用します:

nvm install 18.0.0
nvm reinstall-packages 14.20.1

このコマンドは、バージョン 14.20.1 から 18.0.0 までのすべてのグローバル パッケージを再インストールします。

Docker での使用

Docker を使用するプロジェクトの場合、NVM を使用して Node.js をインストールすることで Dockerfile を合理化できます:

FROM ubuntu:20.04

# Install dependencies
RUN apt-get update && apt-get install -y curl

# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash

# Set up NVM environment
ENV NVM_DIR /root/.nvm
ENV NODE_VERSION 14.20.1
RUN . $NVM_DIR/nvm.sh && nvm install $NODE_VERSION

# Ensure Node.js is available
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION/bin:$PATH

# Verify installation
RUN node -v

トラブルシューティングとヒント

よくある問題

  1. NVM コマンドが見つかりません: シェル設定ファイルが NVM を正しくソースしていることを確認してください。
  2. 権限の問題: 適切な権限でコマンドを実行するか、NVM インストール パスを調整します。

ベストプラクティス

  1. NVM を定期的に更新する: 新機能やバグ修正の恩恵を受けるために、NVM 自体を常に最新の状態に保ちます。
  2. .nvmrc ファイルを使用する: これにより、開発環境と CI パイプライン間の一貫性が確保されます。
  3. グローバル パッケージ管理: 一貫性を維持するために、Node.js バージョン間でグローバル パッケージを定期的に同期します。

結論

NVM は、Node.js 開発ワークフローを大幅に合理化できる強力なツールです。 NVM をマスターすると、複数の Node.js バージョンを簡単に管理し、プロジェクトの互換性を確保し、クリーンな開発環境を維持できます。経験豊富な開発者でも、Node.js を始めたばかりでも、NVM をツールキットに組み込むことで生産性と柔軟性が向上します。

コーディングを楽しんでください!

リリースステートメント この記事は次の場所に転載されています: https://dev.to/koolkamalkishor/-mastering-nvm-simplifying-nodejs-version-management-5hda?1 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3