nodejs

nvm(Node Version Manager)

Node.js를 사용하는 개발자라면 여러 프로젝트 간에 서로 다른 버전의 Node.js를 사용해야 하는 경우가 자주 발생합니다. 이때 버전을 손쉽게 관리하고 변경할 수 있도록 도와주는 도구가 바로 nvm(Node Version Manager)입니다.


이번 글에서는 nvm이란 무엇이며, 어떻게 설치하고 활용할 수 있는지 실제 사용 예제와 함께 자세히 살펴보겠습니다.


nvm이란?

nvm(Node Version Manager)은 여러 버전의 Node.js를 손쉽게 설치하고, 서로 다른 버전 간에 빠르게 전환할 수 있도록 해주는 도구입니다. 이를 통해 프로젝트마다 필요한 버전을 효율적으로 관리할 수 있습니다.


nvm 설치하기

Linux / MacOS에서 설치

터미널에서 다음 명령어를 실행하여 간단히 설치할 수 있습니다.

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

설치가 끝나면 다음 명령어를 통해 설치를 확인할 수 있습니다.

nvm
nvm --version

Node.js 버전 설치 및 변경하기

설치 가능한 Node.js 버전 확인

nvm
nvm ls-remote

특정 버전 설치

예를 들어 Node.js 20.11.1 버전을 설치하려면 다음과 같이 입력합니다.

nvm
nvm install 20.11.1

설치된 Node.js 버전 확인

nvm
nvm ls

특정 버전으로 변경

Node.js 버전을 20.11.1로 변경하려면 다음과 같이 입력합니다.

nvm
nvm use 20.11.1

이후 터미널에서 Node.js 버전을 확인하면 원하는 버전이 설정된 것을 볼 수 있습니다.

nvm
node -v

기본 버전 설정

특정 버전을 기본(default)으로 설정하려면 다음과 같이 입력합니다.

nvm
nvm alias default 20.11.1

이렇게 하면 새 터미널 세션이 열릴 때마다 이 기본 버전이 사용됩니다.


프로젝트별 Node.js 버전 자동 설정

프로젝트 폴더에 .nvmrc 파일을 만들어 Node.js 버전을 명시하면, 폴더로 이동 시 자동으로 해당 버전이 적용됩니다.

.nvmrc 파일 생성

프로젝트 루트에서 다음 명령어를 실행합니다.

nvm
echo "20.11.1" > .nvmrc

자동 설정 활성화

프로젝트 폴더에 들어갈 때마다 다음 명령어를 실행하거나, 셸 설정에 자동 적용 스크립트를 추가하여 자동화할 수 있습니다.

nvm
nvm use

자동화를 위한 bash 설정 예시:

nvm
echo 'autoload -U add-zsh-hook
load-nvmrc() {
  if [ -f ".nvmrc" ]; then
    nvm use
  fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc' >> ~/.zshrc

자주 사용하는 명령어 정리

  • 설치 가능한 버전 확인: nvm ls-remote
  • 버전 설치: nvm install [버전]
  • 버전 변경: nvm use [버전]
  • 기본 버전 설정: nvm alias default [버전]
  • 설치된 버전 목록 확인: nvm ls

마무리

nvm은 다양한 프로젝트 환경을 동시에 다루는 개발자에게 필수적인 도구입니다. 이를 활용해 버전 충돌 걱정 없이 편리하게 Node.js 개발 환경을 관리해 보세요. 위의 내용을 참고하여 프로젝트의 안정성과 효율성을 높이기를 바랍니다.


참고 문서