[Mac OS/NVM] 맥/맥북에서 NVM(nodejs version manager)으로 node 버전별 설치/관리하기



1. NVM 이 무엇인가요?

nvm은 nodejs version manager의 약자입니다. 직역하면 node.js 버전 관리자인데요.시스템에 하나의 node.js 버전만 사용하지 않고, 여러가지 프로젝트를 진행하면서 여러가지 node.js 버전이 필요한 경우가 있을 것입니다. 이 때, 운영체제 시스템에 여러 버전의 node.js 를 설치하고, 사용할 버전을 쉽게 전환할 수 있게 도와주는 프로그램이라고 보시면 됩니다. 이와 비슷한 버전 관리자로는 pyenv(Python Environment), rvm(Ruby Version Manager)가 있습니다.

2. NVM 설치 방법

2.1. nvm 설치

$ brew install nvm

brew 를 이용하여 nvm 을 설치해줍니다.

2.2. 쉘에 시스템 환경변수 등록하기

nvm이 설치 되었지만 현재는 nvm이라고 터미널에 입력하면 인식하지 못하는 상태입니다. nvm을 명령어로 인식하기 위해서는 nvm을 환경변수로 등록해야합니다. 사용하고 있는 쉘의 종류(zsh, bash, etc..)마다 설정 파일을 변경해주어야 합니다.

# zsh 은 둘 중에 하나로 사용하시면 됩니다.
$ vim ~/.zshenv 
$ vim ~/.zprofile 

# bash
$ vim ~/.bash_profile

하기의 내용을 넣어줍니다.

export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"  # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm"  # This loads nvm bash_completion

하기 내용을 넣어준 이후에는 환경 변수가 적용될 수 있게 해주어야 되기 때문에, source 라는 명령어를 입력하여 환경 변수를 적용시켜 줍니다.

# zsh 
$ source ~/.zshenv 
$ source ~/.zprofile 

# bash
$ source ~/.bash_profile

3. nvm 사용하기

3.1. nvm 버전 확인하기

$ nvm -v
0.39.1

image

nvm -v 명령어를 입력하면 위와 같이 nvm의 버전이 출력되는 것을 확인할 수 있습니다.

3.2. nvm 설치가능한 버전 확인하기

$ nvm ls
->     v14.19.3
default -> 14 (-> v14.19.3)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v14.19.3) (default)
stable -> 14.19 (-> v14.19.3) (default)
lts/* -> lts/gallium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.19.3
lts/gallium -> v16.15.1 (-> N/A)

nvm ls 명령어를 입력하면 설치할 수 있는 버전을 확인할 수 있습니다. nvm ls-remote 명령어는 더 많은 세부버전을 확인할 수 있습니다.

$ nvm ls-remote
        v0.1.14
        v0.1.15
        v0.1.16
        v0.1.17
        v0.1.18
        v0.1.19
        v0.1.20
        v0.1.21
        v0.1.22
        v0.1.23
        --생략--
       v16.13.0   (LTS: Gallium)
       v16.13.1   (LTS: Gallium)
       v16.13.2   (LTS: Gallium)
       v16.14.0   (LTS: Gallium)
       v16.14.1   (LTS: Gallium)
       v16.14.2   (LTS: Gallium)
       v16.15.0   (LTS: Gallium)
       v16.15.1   (Latest LTS: Gallium)
        v17.0.0
        v17.0.1
        v17.1.0
        v17.2.0
        v17.3.0
        v17.3.1
        v17.4.0
        v17.5.0
        v17.6.0
        v17.7.0
        v17.7.1
        v17.7.2
        v17.8.0
        v17.9.0
        v17.9.1
        v18.0.0
        v18.1.0
        v18.2.0
        v18.3.0
        v18.4.0

3.3. nvm 으로 원하는 버전 설치하기

# nvm install 명령어로 원하는 버전 설치하기
$ nvm install 18
$ nvm install 18.4.0
$ nvm install --lts
# 최신 버전 사용하기
$ nvm use --lts
$ nvm use 18.4.0