노드(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
# 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
특정 노드 버전 설치
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이 설치되었음을 확인할 수 있습니다.
노드 버전을 확인해볼게요.
node --version
// or
node -v
// or
nvm current
노드 버전을 확인해보면 v12.18.3 버전으로 잘 적용되었습니다!
특정 노드 버전으로 전환
현재 사용 중인 노드 버전은 12.18.3입니다. 그럼 다시 10.16.3 버전으로 전환해볼까요? 만약 10.16.3 버전이 없으시다면, nvm install 10.16.3으로 해당 노드 버전을 설치해주세요!
nvm use 10.16.3
nvm use {버전}을 입력하면 쉽게 버전 스위칭이 가능합니다.
특정 노드 버전 삭제
특정 노드 버전을 삭제하기 위해서 nvm uninstall 명령어를 사용하면 됩니다. (사용하고 있는 노드 버전은 삭제할 수 없습니다. 삭제하고 싶다면 다른 노드로 전환하고 삭제하세요.)
nvm uninstall 12.18.3 // nvm uninstall {버전}
마무리
이번 포스팅에서는 NVM(Node Version Manager) 도구를 활용해서 효율적으로 노드(Node.js) 버전을 관리하는 방법을 알아봤습니다. NVM은 설치도 정말 간편하고 사용법도 심플해서 굉장히 쉽게 사용할 수 있고, 굉장히 효율적으로 노드 버전을 관리할 수 있는 방법이니 사용해 보는 것을 추천합니다.
'개발 > Javascript' 카테고리의 다른 글
자바스크립트(Javascript)로 정말 쉽게 클립보드 복사하기 기능 구현하는 방법 (4) | 2020.08.08 |
---|---|
자바스크립트(Javascript, Node.js)에서 랜덤 문자열 생성하는 방법(Generate random string/characters in JavaScript) (2) | 2020.08.04 |
[Nodejs] Nodejs에서 손쉽게 폴더 생성하는 방법 (0) | 2020.06.30 |
[Javascript] URL QueryString 값을 Object(key-value)로 손쉽게 받아오는 방법 (0) | 2020.04.08 |
자바스크립트 인스턴스 이름 가져오는 방법 (javascript get instance name) (0) | 2020.03.01 |
이 포스팅은 쿠팡파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.