Node.js & TypeScript

개발자라면 μ•Œμ•„μ•Όν•  NVM κ°œλ… & μ„€μΉ˜ & μ‚¬μš©λ²•

martinooo 2024. 4. 15. 15:13

 

🀷‍♂️ NVMμ΄λž€?


NVM? Node Version Manager

 

node.js κ°œλ°œμ„ ν•˜λ‹€λ³΄λ©΄ ν•œλ²ˆμ―€μ€ λ“€μ–΄λ΄€λ˜ μš©μ–΄ NVM은 μ„€λͺ…ν•˜μžλ©΄

Node.js의 버전을 κ΄€λ¦¬ν•˜λŠ” 도ꡬ이닀.

 

μ™œ NVM을 μ‚¬μš©ν•΄μ•Ό ν•˜λŠ” 이유?

νšŒμ‚¬μ—μ„œ ν˜‘μ—…, ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜λ‹€λ³΄λ©΄ λ‹€μ–‘ν•œ 라이브러리, ν”„λ ˆμž„μ›Œν¬, 개발툴의 버전 ν˜Έν™˜ 문제λ₯Ό κ²ͺλŠ”λ‹€.

μ΄λŸ¬ν•œ 버전 ν˜Έν™˜λ¬Έμ œλ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄μ„œ node.js 버전을 κ΄€λ¦¬ν•΄μ£ΌλŠ” 도ꡬ NVM ν•„μš”ν•˜λ‹€.

 

ex: Next.js 14 버전은 node.js 버전 18.17.4 이상뢀터 μ‚¬μš©μ΄ κ°€λŠ₯ν•˜λ‹€.

18.17.4 μ•„λž˜ 버전이 Next.js 14 버전을 install or create ν•˜λ©΄ 였λ₯˜κ°€ λ°œμƒν•˜λ―€λ‘œ node 버전을 μ—…κ·Έλ ˆμ΄λ“œ ν•΄μ•Όν•œλ‹€.

이런 μ˜ˆμ‹œκ°™μ€ 버전 ν˜Έν™˜ λ¬Έμ œκ°€ λ°œμƒν• κ²½μˆ˜ NVM을 ν™œμš©ν•΄μ„œ node 버전을 λ°”κΏ”μ„œ ν˜Έν™˜λ¬Έμ œλ₯Ό ν•΄κ²°ν•  수 μžˆλ‹€.

 

NVM을 μ‚¬μš©ν•˜λŠ” μž₯점:

  • 컴퓨터 전역에 λ‹€μ–‘ν•œ node.js 버전을 μ„€μΉ˜ν•  수 있고 관리할 μˆ˜μžˆλ‹€.
  • nvm use 버전 λͺ…λ Ήμ–΄λ‘œ node.js 버전을 κ°„λ‹¨ν•œκ²Œ μŠ€μœ„μΉ­ν•΄μ„œ μ‚¬μš©ν•  수 μžˆλ‹€.

 

🀷‍♂️ NVM μ„€μΉ˜ & μ‚¬μš©λ²•?


λ‚˜λŠ” mac μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— macκΈ°μ€€μœΌλ‘œ μ„€μΉ˜ & μ‚¬μš©λ²•μ„ μ„€λͺ…ν•΄λ“œλ¦¬μ§€λ§Œ window도 크게 λ‹€λ₯΄μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

 

NVM μ„€μΉ˜

1.μ„€μΉ˜ 

$ sudo curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash

 

2. NVM μ„€μΉ˜ 확인 

$ nvm ls

-bash: nvm: command not found

 

μ„€μΉ˜ 후에 nvm ls λͺ…λ Ήμ–΄λ₯Ό μž…λ ₯ν•˜λ©΄ not found 였λ₯˜κ°€ λ°œμƒν•œλ‹€.

 

3. nvm ν™˜κ²½λ³€μˆ˜ μ…‹νŒ…

$ vi ~/.bash_profile

 

3-1. vi 에디터 νŽΈμ§‘κΈ°μ—μ„œ ν™˜κ²½λ³€μˆ˜ μ…‹νŒ…

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

 

3-2. zsh μ‰˜μ„ μ‚¬μš©ν•  경우

$ vi ~/.zshrc

 

.zshrc μ•„λž˜μ˜ ν™˜κ²½λ³€μˆ˜λ₯Ό λΆ™μ—¬λ„£κΈ°ν•˜κ³  μ €μž₯ν•˜κ³  μ‹€ν–‰ν•œλ‹€.

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"

 

4. μž¬μ‹œμž‘ 

source ~/.bash_profile

 

4-1. zsh μ‰˜μ„ μ‚¬μš©ν•  경우 μž¬μ‹œμž‘

source ~/.zshrc

 

5. NVM 확인

$ nvm ls

 

-> system
node -> stable (-> N/A) (default)
iojs -> N/A (default)

 

NVM 버전 μ„€μΉ˜

1.λ…Έλ“œ νŠΉμ • 버전 μ„€μΉ˜

$ nvm install 20.7.0

 

*node μ΅œμ‹  버전 μ„€μΉ˜ λͺ…λ Ήμ–΄

$ nvm install node

 

2. μ„€μΉ˜λœ node 버전 확인

$ nvm ls

 

 

NVM 버전 λ³€κ²½

1.ν˜„μž¬ 버전 확인

node -v

 

2. node 버전 λ³€κ²½ 

nvm use 20.7.0

 

3. λ³€κ²½λœ 버전 확인

node -v

 

4. μ„€μΉ˜λœ node μ΅œμ‹  버저을 default λͺ…λ Ήμ–΄ 

$ nvm alias default node

 

 

NVM의 κ°œλ…κ³Ό μ™œ μ‚¬μš©ν•΄μ•Ό ν•˜λŠ”μ§€μ™€ 기본적인 μ„€μΉ˜ & μ‚¬μš©λ²•μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

 


 

"νŽΈν•˜κ³  λΉ λ₯΄κ²Œ κΈ€μžμˆ˜λ₯Ό ν™•μΈν• μˆ˜ μžˆλŠ” 방법"