Last Updated: 2021-06-14

cover

NVM을 사용하여 Windows 환경에서도 Node.js의 버전을 관리하고, 개발 환경에 따라 Node.js 버전을 변경하는 방법을 배워보자.

NVM 은 Node Version Manager로써 Node.js의 도구이며 여러 Node.js를 설치하여 상황에 따라 버전을 변경해 가면서 사용하는 것을 말한다.

개발 환경에 따라 Node.js의 버전을 변경해야 하는 상황이 한 번쯤은 꼭 온다. 이런 환경에서 그때마다 Node.js를 재설치 및 삭제하는 방법으로는 한계가 있고 불편할뿐더러 잡아먹는 시간도 아깝다. 이런 상황에서 Node.js 버전을 상황에 따라 변경해 가면서 사용하게끔 도와주는 것이 NVM, 즉 Node Version Manager이다.

글쓴이의 경우에도 Hexo 기반의 블로그를 VuePress 기반의 블로그로 변경하려고 하였는데 Hexo의 경우 Node.js Version 12.0.0 보다 높으면 일부 문제가 발생하기 때문에 Node.js Version 12.0.0을 사용해야 하는데 VuePress의 경우 12.0.0에서 다른 문제를 야기했기에 더 높은 버전을 사용해야 하는 불편한 점이 많았다.

이번 포스팅에서는 이 NVM을 Windows 환경에서 사용하는 법을 예제를 통해서 알아보도록 하자.

NVM

NVMNode Version Manager로 Node.js의 하나의 도구이며, 여러 Node.js를 설치하여 상황에 따라서 Node.js의 버전을 변경해 가면서 사용할 수 있도록 도와준다. NVM의 경우 ubuntu, MacOS, Windows WSL 플랫폼에서 작동한다. 그러므로 일반적으로 우리가 사용하는 Windows에서는 사용이 까다롭다. Windows에 리눅스를 설치하거나 이외의 방법으로 사용해야 하는데 이보다 쉽게 사용 할 수 있는 방법이 있다.

nvm-windows

nvm-windows는 MIT 라이센스의 오픈 소스로 Go로 작성되었다. Windows 환경에서 nvm-windows를 동작시키기 위해서는 먼저 nvm-windows를 설치해야하며 이 nvm-windowsNode.js v4+에서 지원되기 때문에 기본적인 Node.js는 설치가 되어 있어야 한다.

설치

nvm-windows 릴리즈 노트에 보면 nvm-windows를 다운받을 수 있다. 해당 페이지에서 파일을 다운로드 후 설치를 진행하면 된다.

nvm-windows를 설치 후 명령 프롬프트를 실행하여 아래 코드를 입력하자.

nvm -v

위 명령어 실행 시 설치된 nvm 버전이 출력되고 이는 정상적으로 설치가 되었다는 것이다.

설치된 Node.js 확인

이제 현재 로컬에 설치된 Node.js를 확인해 보자. 여기까지 진행하였다면 아마도 1개의 Node.js가 설치되어 있을 것이다.

nvm ls

만약 2개 이상의 Node.js 버전이 출력된다면 앞에 *이 있는 버전이 현재 사용 중인 버전이다.

Node.js 설치

다른 버전의 Node.js 설치는 아래 명령을 통해 설치할 수 있다.

nvm install <version> [arch]

<version>은 설치할 Node.js의 버전이며 Node.js DIST에서 릴리즈 된 버전을 확인 할 수 있다. NVM은 Node.js DIST에서 다운로드하니 참고하도록 하자.

arch는 설치될 Node.js 환경을 설정해 준다. 32 Bit 환경이라면 32를 입력하고 64 Bit이면 64를 입력해 주면 된다. 이게 번거롭다면 아래 명령어를 입력하자.

nvm arch 64 // or 32

Node.js 수동 설치

nvm install 명령어를 통해서 설치 시 아래와 같은 오류가 출력될 수 있다.

wsarecv: An existing connection was forcibly closed by the remote host.

이는 NVM의 문제가 아닌 네트워크와 관련된 문제로 Node.js DIST 접근하여 Node.js를 다운로드 할 때 해당 URL이 차단되어 발생하는 현상이다. 이럴 경우엔 Node.js DIST에서 Node.js를 직접 다운받아서 설치하면 된다.

Node.js DIST로 이동하여 원하는 버전으로 들어가면 tar.gz, zip 등과 같은 설치 파일이 많은데 환경에 맞는 Node.js로 압축 형식으로 된 Node.js를 다운받자. 이후 아래 경로로 이동해보자.

C:\Users\사용자 이름\AppData\Roaming\nvm

해당 경로로 이동하면 nvm list 또는 nvm ls로 확인했던 버전이 존재할 것이다. 이 경로에 Node.js 버전 명으로 해서 압축해제 하자.

압축 해제 후 nvm ls 또는 nvm list 명령어로 사용이 가능한 상태로 목록에 출력될 것이다.

Node.js 버전 변경

이제 수동으로 설치된 Node.js를 사용하도록하자.

nvm use <version>

설치된 <version>use 명령어를 통해 사용할 수 있으며, 이후 node -v를 통해서도 현재 Node.js 버전이 무엇인지 확인 할 수 있다.