NVM을 활용해서 쉽고 효율적이게 노드(Node.js) 버전을 관리해보자

남양주개발자

·

2020. 7. 23. 07:07

728x90
반응형

노드(Node.js)를 사용하는 분이라면 여러 프로젝트를 관리하면서 여러 노드 버전을 사용해야 될 상황이 오게 됩니다. 프로젝트를 변경할 때마다 해당하는 특정 노드 버전을 설치해주는 것은 굉장히 비효율적인 방법입니다. 이렇게 여러 노드 버전을 관리하기 위해 등장한 도구가 바로 NVM(Node Version Manager) 입니다.

루비(Ruby)나 파이썬(Python)을 사용하시는 분이라면 루비의 rvm, rbenv나 파이썬의 pyenv와 비슷하다고 생각하시면 됩니다. NVM은 다양한 버전의 노드(Node.js) 리스트를 확인할 수 있고, 편하게 설치 및 삭제 그리고 전환까지 할 수 있는 매우 편리한 도구입니다.

NVM 설치하기

NVM을 설치하기 위해서 brew를 사용하거나 cURL이나 Wget을 활용할 수 있습니다. 어떤 방식이든 쉽게 설치할 수 있지만 개인적으로 Mac 패키지 관리자(Homebrew)를 사용하고 계시다면 brew를 통해서 설치하는 것을 추천드립니다.

1. brew로 설치하는 방법

Mac에서 패키지를 설치할 때, MacOS 패키지 관리자 brew를 사용해서 설치할 수 있습니다. 

$ brew install nvm

nvm 명령어를 사용하기 위해 .bash_profile 파일이나 .zshrc 파일에 아래를 추가합니다. 저는 zsh를 사용하기 때문에 zsh 설정 파일에 추가하겠습니다.

vi ~/.zshrc
// or
vi ~/.bash_profile

zshrc 설정파일에 nvm을 연결해주는 모습

# NVM
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh

수정한 .zshrc(.bash_profile)을 반영합니다.

source ~/.zshrc
// or
source ~/.bash_profile

2. cURL or Wget으로 설치하는 방법

cURL 또는 Wget 명령어를 통해서도 nvm을 설치할 수 있습니다!

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

설치 스크립트(install script)를 실행하면 쉘 설정 파일(~/.bash_profile이나 ~/.zshrc)에 nvm 명령어 스크립트가 추가됩니다.

vi ~/.zshrc
// or
vi ~/.bash_profile

해당 스크립트는 nvm 저장소에 있는 소스들을 ~/.nvm에 복제하고 스니펫을 ~/.bash_profile 또는 ./zshrc 설정 파일에 추가합니다. 스니펫이 정상적으로 설정파일에 추가되었는지 확인합니다.

vi ~/.zshrc
// or
vi ~/.bash_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" # This loads nvm

NVM이 정상적으로 설치가 되었는지 확인합니다. .nvm이 존재하면 설치 완료!

cd ~/.nvm 

NVM 사용법

NVM을 설치하셨다면 NVM 사용방법은 설치보다 훨씬 간단합니다. 현재 설치된 노드(Node.js)의 버전들의 목록을 확인해 볼까요?

노드 목록 보기

nvm list
// or
nvm ls

nvm list 명령어로 노드(Node.js) 버전의 목록을 불러오는 예시

특정 노드 버전 설치

Node.js의 LTS 최신 버전을 설치해 보겠습니다. LTS 최신 버전은 12.18.3 이네요! (만약 7.x버전, 10.x 버전을 설치하고 싶으시다면 nvm install 7, nvm install 10 명령어를 사용하면 됩니다.)

nvm install --lts

nvm install 명령어로 노드를 설치한 후 nvm list로 노드 목록을 확인하면 v12.18.3이 설치되었음을 확인할 수 있습니다.

nvm install 명령어로 노드(Node.js) LTS 최신버전을 설치하는 예시

노드 버전을 확인해볼게요.

node --version
// or
node -v
// or
nvm current

노드 버전을 확인해보면 v12.18.3 버전으로 잘 적용되었습니다!

node version 명령어를 통해 정상적으로 버전 전환이 되었는지 확인하는 예시

특정 노드 버전으로 전환

현재 사용 중인 노드 버전은 12.18.3입니다. 그럼 다시 10.16.3 버전으로 전환해볼까요? 만약 10.16.3 버전이 없으시다면, nvm install 10.16.3으로 해당 노드 버전을 설치해주세요!

nvm use 10.16.3

nvm use {버전}을 입력하면 쉽게 버전 스위칭이 가능합니다.

nvm use 명령어를 통해 손쉽게 버전 전환한 예시

특정 노드 버전 삭제

특정 노드 버전을 삭제하기 위해서 nvm uninstall 명령어를 사용하면 됩니다. (사용하고 있는 노드 버전은 삭제할 수 없습니다. 삭제하고 싶다면 다른 노드로 전환하고 삭제하세요.)

nvm uninstall 12.18.3 // nvm uninstall {버전}

특정 노드 버전을 삭제하는 예시

마무리

이번 포스팅에서는 NVM(Node Version Manager) 도구를 활용해서 효율적으로 노드(Node.js) 버전을 관리하는 방법을 알아봤습니다. NVM은 설치도 정말 간편하고 사용법도 심플해서 굉장히 쉽게 사용할 수 있고, 굉장히 효율적으로 노드 버전을 관리할 수 있는 방법이니 사용해 보는 것을 추천합니다.

728x90
반응형
그리드형

이 포스팅은 쿠팡파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

💖 저자에게 암호화폐로 후원하기 💖

아이콘을 클릭하면 지갑 주소가자동으로 복사됩니다