다양한 Node.js 버전을 요구하는 여러 프로젝트를 동시에 진행하다 보면, A 프로젝트는 Node.js 16을, B 프로젝트는 Node.js 18을 요구해서 매번 버전을 수동으로 바꾸는 일이 번거롭거나 버전 충돌이 걱정되셨을 겁니다.
이런 문제는 각 프로젝트의 의존성이 특정 Node.js 버전에 강하게 묶여 있기 때문에 발생하며, 전역적으로 하나의 Node.js 버전만 사용할 때 필연적으로 생기는 불편함입니다.
이 글에서는 macOS 환경에서 nvm(Node Version Manager)을 사용하여 각 프로젝트에 필요한 Node.js 버전을 독립적으로 설치하고 관리하는 명확한 방법을 단계별로 제시합니다.
– macOS에서 nvm을 설치하여 여러 Node.js 버전을 효율적으로 관리하는 방법을 배웁니다.
– 프로젝트마다 다른 Node.js 버전을 손쉽게 전환하고, 기본 버전을 설정하는 과정을 안내합니다.
– `.nvmrc` 파일을 활용하여 프로젝트 진입 시 Node.js 버전을 자동으로 맞춰주는 실용적인 설정을 적용합니다.
맥(Mac)에서 nvm(Node Version Manager)을 설치하고 활용하여, 여러 Node.js 버전을 프로젝트별로 유연하게 설정하고 관리하는 방법을 알려줍니다.
nvm 설치 전 준비: 홈브루와 터미널 설정
nvm을 설치하기에 앞서, macOS에서는 패키지 관리자인 홈브루(Homebrew)를 사용하는 것이 일반적입니다. 홈브루는 다양한 개발 도구를 쉽게 설치하고 관리할 수 있게 도와주며, nvm 역시 홈브루를 통해 설치할 수 있습니다. 이미 홈브루가 설치되어 있다면 다음 단계로 넘어가도 무방합니다.
또한, 모든 설정은 터미널에서 이루어지므로, 사용하실 터미널(기본 터미널, iTerm2 등)을 미리 준비해두셔야 합니다. 이 과정은 약 5분 정도 소요될 수 있습니다.
- 터미널 실행 — macOS의 Spotlight 검색(Command + Space)에서 ‘터미널’을 검색하여 실행합니다.
- 홈브루 설치 확인 — 터미널에 `brew –version`을 입력하여 홈브루 설치 여부를 확인합니다. 버전 정보가 출력되면 설치되어 있는 것입니다.
- 홈브루 설치 — 만약 설치되어 있지 않다면, 다음 명령어를 복사하여 터미널에 붙여넣고 실행합니다. 이 과정에서 비밀번호를 입력해야 할 수 있습니다.
`/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”`
Photo by Daniil Komov on Pexels
macOS에 nvm 설치하기: 공식적인 방법
nvm은 주로 curl 명령어를 통해 공식 GitHub 저장소에서 직접 스크립트를 다운로드하여 설치하는 방법을 권장합니다. 홈브루를 통해 설치할 수도 있지만, 공식 스크립트 방식이 업데이트 관리나 환경 설정 측면에서 더 안정적이라고 알려져 있습니다. 이 방법은 몇 개의 간단한 명령어 입력으로 10분 이내에 완료할 수 있습니다.
설치 스크립트는 자동으로 nvm을 다운로드하고, 사용자의 셸(bash, zsh 등) 환경 설정 파일에 nvm 로드 스크립트를 추가해줍니다. 이 과정이 제대로 이루어져야 터미널을 열 때마다 nvm을 사용할 수 있습니다.
- nvm 설치 스크립트 실행 — 터미널에 다음 명령어를 입력하고 실행합니다.
`curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash` - 환경 설정 파일 업데이트 — 설치 스크립트가 셸 환경 설정 파일(예: `~/.zshrc` 또는 `~/.bash_profile`)에 nvm 경로를 추가합니다. 변경 사항을 적용하기 위해 터미널을 닫았다 다시 열거나, 다음 명령어를 실행합니다.
`source ~/.zshrc` (zsh 사용 시)
`source ~/.bash_profile` (bash 사용 시) - nvm 설치 확인 — `nvm –version`을 입력하여 nvm이 제대로 설치되었는지 확인합니다. 버전 정보가 출력되면 성공입니다.
nvm으로 Node.js 버전 관리 마스터하기
nvm이 성공적으로 설치되었다면, 이제 원하는 Node.js 버전을 설치하고 프로젝트에 맞게 자유롭게 전환할 수 있습니다. nvm은 수십 가지의 Node.js 버전을 동시에 관리할 수 있는 강력한 기능을 제공합니다.
가장 먼저 해야 할 일은 원하는 Node.js 버전을 설치하는 것입니다. 예를 들어, Node.js 16과 18 버전을 설치하고 싶다면 간단한 명령어로 해결됩니다. 그리고 `nvm use` 명령어를 사용하여 현재 터미널 세션에서 사용할 Node.js 버전을 지정할 수 있습니다.
- Node.js 버전 설치 — `nvm install 16` (Node.js 16 설치), `nvm install 18` (Node.js 18 설치)와 같이 원하는 버전을 설치합니다. `nvm install node`는 최신 안정화 버전을 설치합니다.
- 설치된 버전 확인 — `nvm ls` 명령어를 입력하면 현재 설치된 Node.js 버전 목록을 볼 수 있습니다. 현재 사용 중인 버전은 초록색으로 표시됩니다.
- Node.js 버전 전환 — `nvm use 16` 또는 `nvm use 18`과 같이 명령어를 입력하여 원하는 버전으로 전환합니다.
- 기본 Node.js 버전 설정 — 터미널을 새로 열었을 때 자동으로 적용될 기본 버전을 설정하려면 `nvm alias default 18`과 같이 설정합니다.
특정 프로젝트의 요구사항이 Node.js 14.17.6과 같이 마이너 버전까지 명확할 경우, `nvm install 14.17.6`처럼 정확한 버전을 지정하여 설치할 수 있습니다. nvm은 LST(장기 지원) 버전과 최신 버전을 모두 지원합니다.
프로젝트별 Node.js 버전 자동 적용 설정
여러 프로젝트를 오가며 작업할 때 매번 `nvm use` 명령어를 입력하는 것은 번거로운 일입니다. nvm은 `.nvmrc` 파일을 통해 이 과정을 자동으로 처리할 수 있도록 지원합니다. 이 파일은 프로젝트의 루트 디렉토리에 위치하며, 프로젝트가 요구하는 Node.js 버전을 명시합니다.
프로젝트 디렉토리로 이동할 때마다 nvm이 `.nvmrc` 파일을 읽어 해당 버전을 자동으로 활성화하면 개발 효율성이 크게 향상됩니다. 이 기능은 특히 다양한 레거시 프로젝트와 최신 프로젝트를 동시에 다루는 개발 환경에서 빛을 발합니다.
- `.nvmrc` 파일 생성 — 프로젝트의 루트 디렉토리에서 `.nvmrc` 파일을 생성하고, 그 안에 사용할 Node.js 버전 번호만 작성합니다. 예를 들어, `echo “16.14.0” > .nvmrc` 명령어로 Node.js 16.14.0 버전을 지정할 수 있습니다. `lts/gallium`처럼 LTS 별칭을 사용할 수도 있습니다.
- 프로젝트 디렉토리 이동 및 자동 적용 — 터미널에서 이 프로젝트 디렉토리로 이동하면, nvm이 `.nvmrc` 파일을 감지하고 해당 Node.js 버전을 자동으로 `nvm use` 명령어로 적용합니다. (이 기능을 위해서는 셸 환경 설정에 `nvm` 관련 설정이 올바르게 되어 있어야 합니다.)
- 버전 확인 — 디렉토리 이동 후 `node -v`를 입력하여 올바른 버전이 적용되었는지 확인합니다.
`.nvmrc` 파일이 자동 적용되려면 셸 환경 설정 파일(예: `.zshrc`, `.bash_profile`)에 `nvm` 초기화 스크립트가 올바르게 추가되어 있어야 합니다. 간혹 `~/.bashrc` 파일에 추가되어도 제대로 작동하지 않는 경우가 있으니, 공식 문서의 가이드를 참조하여 환경 변수 설정을 다시 확인하는 것이 좋습니다.
이 글을 통해 macOS에서 nvm을 설치하고, 여러 Node.js 버전을 효율적으로 관리하는 방법을 자세히 알아보았습니다. 홈브루를 통한 사전 준비부터 nvm 설치, 그리고 `.nvmrc` 파일을 활용한 프로젝트별 자동 버전 설정까지, 모든 과정을 단계별로 익히셨을 겁니다.
이제 더 이상 Node.js 버전 충돌로 스트레스 받지 않고, 각 프로젝트에 최적화된 개발 환경을 구축할 수 있습니다. 30초 안에 원하는 버전으로 전환하는 경험을 하게 될 것입니다.
지금 바로 적용해 보세요.
- nvm 공식 GitHub 저장소 — nvm 설치 및 사용에 대한 가장 최신 정보와 상세 문서
- Node.js 공식 문서 — Node.js에 대한 전반적인 정보 및 버전별 상세 설명
동영상으로 보는 맥 nvm Node.js 버전 관리 설치
글로 충분하지 않다면 관련 영상을 함께 보세요. 클릭하면 YouTube에서 검색 결과로 이동합니다.
자주 묻는 질문
Q. 맥에서 nvm을 어떻게 설치하고, 제대로 작동하는지 확인할 수 있나요?
A. nvm은 `curl` 또는 `wget` 명령어를 사용하여 터미널에서 설치할 수 있습니다. 설치 스크립트 실행 후, 쉘 환경 설정 파일(예: `.zshrc`, `.bash_profile`)에 nvm 로드 스크립트를 추가해야 합니다. 설치가 완료되면 `nvm –version` 명령어로 설치 여부를 확인하고 터미널을 다시 시작하여 nvm 명령어를 사용할 수 있습니다.
Q. 여러 Node.js 버전을 설치해야 하는 이유는 무엇이며, nvm이 어떤 도움을 주나요?
A. 다양한 프로젝트들이 각기 다른 Node.js 버전을 요구하는 경우가 많아, 시스템 전역에 하나의 버전만 설치하면 호환성 문제가 발생할 수 있습니다. nvm은 프로젝트별로 필요한 Node.js 버전을 손쉽게 설치하고 전환할 수 있게 해주어, 버전 충돌 없이 효율적인 개발 환경을 구축하도록 돕습니다.
Q. 프로젝트마다 다른 Node.js 버전을 설정하려면 어떻게 해야 하나요? (`.nvmrc` 파일은 무엇인가요?)
A. 각 프로젝트 디렉토리에 원하는 Node.js 버전 번호(예: `14.17.0`)가 담긴 `.nvmrc` 파일을 생성합니다. 이후 해당 디렉토리에서 `nvm use` 명령어를 실행하면 nvm이 `.nvmrc` 파일에 명시된 버전으로 자동 전환하여 프로젝트별로 독립적인 Node.js 개발 환경을 쉽게 관리할 수 있습니다.
Q. 특정 Node.js 버전을 기본값으로 설정하거나, 현재 설치된 모든 Node.js 버전을 확인하려면 어떻게 해야 하나요?
A. 특정 Node.js 버전을 시스템의 기본값으로 설정하려면 `nvm alias default [버전]` 명령어를 사용하면 됩니다. 현재 nvm을 통해 설치된 모든 Node.js 버전 목록을 확인하려면 `nvm ls` 명령어를 실행하여 설치된 버전들과 현재 활성화된 버전을 한눈에 볼 수 있습니다.
함께 읽으면 좋은 글
