백엔드/NodeJS

[NVM] 프로젝트마다 노드 버전을 다르게 설정해주고 싶을 때

SeungYn 2023. 3. 19. 23:34

예전에 만든 프로젝트가 노드 버전이 안 맞아서 실행이 안된다.

NVM이란?

Node Version Manager의 약자로 노드 버전을 관리해주는 애다.

 

 

1. brew로 nvm을 설치하자

brew install nvm

 

2. mkdir ~/.nvm로 폴더를 만들다

mkdir ~/.nvm

 

3. 환경변수 설정을 해줘야 된다.

맞는 쉘로 작성하면 된다.

vi ~/.zshrc #zsh 사용자는 이걸
vi ~/.bash_profile #bash 사용자는 이걸

 

4. 편집기가 열리면

아래코드를 복사해서 맨 밑에 붙여준다.

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

 

5. 편집된 환경변수를 적용시켜준다.

각자 맞는 쉘을 명령어를 사용하면 됨

source ~/.zshrc
source ~/.bash_profile

 

6. nvm 버전을 확인한다.

나는 안됐다.

nvm --version

 

7. 안된 사람은 nvm을 지우고 curl로 설치해 보자 (난 이걸로 해결)

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

 

이제 NVM이 설치가 됐다면 프로젝트에 적용시켜 보자.

 

1. nvm으로 원하는 버전을 설치(나는 18버전대를 쓰고 있었는데 14버전대를 다운 받음)

nvm install v14.21.3

2. 해당 프로젝트에 버전을 명시

아래 명령어를 치면 노드 버전이 명시된 파일이 생긴다.

echo "v14.17.6" > .nvmrc

 

이제 잘 될 거다. 안되면 환경변수 파일 설정 후 꼭 source로 실행시켜서 적용시켜주면 된다.