-
[노드] Windows nvm 로 node.js 최신 버전 설치Front-end 개발 2024. 4. 5. 17:54
이번에 React 복습 강의를 듣게 되면서 node 18번대 버전을 삭제하고 20번대을 설치하게 되었다.
매번 node를 설치 삭제하고 최신 LTS 버전을 설치하는 것이 귀찮으니,
node.js 버전관리 프로그램인 nvm을 설치하여 최신 LTS node.js의 재설치를 해본다.
예전 경험상 nvm을 설치하기 전에 node가 설치되었다면, 미리 삭제해둬야 했다.
혹시 오류가 생길 수 있으니 기존에 node를 설치했다면 제거해준 뒤에 nvm을 통해 다시 node를 재설치하자.
1. NVM 설치 파일 다운로드
나는 윈도우 운영체제를 사용하고 있으므로,
nvm-windows 설치파일이 있는 GitHub 저장소를 이용했다.
(맥 유저는 nvm 보다 n이라는 패키지 모듈을 설치하는 것이 좋다고 한다.)
이미지 상에 빨간색 박스를 쳐둔 Release를 누르고 최신 버전의 파일이 있는 페이지로 이동한다.
가장 먼저 보이는 버전 (나의 경우1.1.12) 아래 쪽에 Assets에서 마음에 드는 파일을 선택한다.
나는 윈도우 운영체제 설치파일인 exe 확장자로 끝나는 파일(nvm-setup.exe)을 다운 받아서 설치했다.
2. nvm 설치
다운 받은 파일이 나와 같은 실행파일이라면 설치하면 된다.
알아서 설치하고 보자.
참고로, nvm-noinstall.zip 처럼 설치 안해도 되는 zip만 풀어도 되는 파일이 있는데, 내가 설치파일을 선택한 이유는 혹시 윈도우 환경 변수 설정까지 해줘야 하나 싶어서 그냥 설치파일로 설치했다. 터미널을 이용해서 node.js를 관리할 것이기 때문이다.
3. nvm 설치 확인 및 LTS 버전 조회
nvm을 설치가 완료되었고, 터미널을 통해서도 실행할 수 있는지 확인하자.
제대로 설치가 되었다면 터미널 명령어로 등록되어 nvm으로 시작하는 명령어를 사용할 수 있을 것이다.
아래 명령어를 쳐서 실행이 됨을 확인함과 동시에 설치 가능한 node.js 버전을 알아보자.
nvm list available
4. 최신 LTS node.js 설치
앞서 설치 가능한 node.js 목록을 보면 LTS 열을 보면 가장 위에 있는 버전이 설치 가능한 최신 버전이다.
LTS(Long Term Support)의 의미가 장기 지원 버전이므로 자주 설치하기 귀찮거나, 새로운 노드의 신기능을 테스트할 이유가 없다면 LTS 설치를 하면 되겠다.
설치 명령어는 아래와 같다.
nvm install 20.12.1 # - LTS node.js 최신버전 설치: nvm install lts # - 일반 node.js 최신버전 설치: nvm install node # - 20번대 최신버전 설치: nvm install 20 # - 설치 삭제: nvm uninstall <version>
이렇게 설치에 성공하면 node.js 홈페이지에서 최신버전의 설치파일을 다운로드 해서 설치한 것과 동일하다.
5. 설치 목록 조회 및 사용할 기본 버전 선택
nvm을 통해 관리하는 설치된 node.js 버전을 검색하는 방법은 단순하다.
아래 명령어를 통해 설치된 버전의 리스트(ls)를 불러온다.
그리고 설치된 목록에서 node 명령어를 사용할 때 기본으로 사용할 버전을 선택해준다.
nvm ls // 설치된 버전 목록 불러오기 nvm use 20.12.1 // 기본 node 버전 설정
이제 다시 설치 목록을 조회해보면, 설치된 항목 중에 기본 node 버전이 무엇인지 표시된다.
아래 node 명령어를 터미널을 통해서 잘 설치되었는지도 확인해본다. (나는 VSCode 터미널을 통해 확인했다.)
node -v // 현재 사용 중인 node.js의 버전
이제 브라우저를 열지 않고도 JS 코드 실행 및 node.js 기반의 라이브러리와 프레임워크를 실행할 수 있다.
짝짝짝.
끝.
참고자료
훨씬 자세한 NVM 모듈 사용법 - 노드 버전 스위칭 (Mac/Windows)
n - Interactively Manage Your Node.js Versions
'Front-end 개발' 카테고리의 다른 글
VSCode 개발 모드를 https로 실행하기 (0) 2024.11.21 [면접 스터디] 프론트엔드 CS 관련 기술 면접 질문 (0) 2024.07.21 [한입챌린지] 7일차 - JS 동기와 비동기 (미션) (0) 2024.04.01 [한입챌린지] 5일차 - JS 원시타입, 객체타입, 배열과 객체 반복문 (0) 2024.03.31 [한입챌린지] 5일차 - JS 구조분해할당, Spread, Rest, 배열과 객체 순회 (0) 2024.03.29