맥 nvm으로 프로젝트별 Node.js 버전 완벽 관리

맥에서 nvm을 활용해 여러 Node.js 버전을 프로젝트별로 손쉽게 관리하는 방법을 알아보세요. 개발 환경 설정을 효율적으로 전환하고 충돌을 방지하는 실용 팁을 제공합니다.

여러 프로젝트를 동시에 진행하다 보면 각기 다른 Node.js 버전을 요구하는 상황에 자주 부딪힙니다. 어떤 프로젝트는 오래된 12 버전에서만 잘 돌아가고, 다른 프로젝트는 최신 20 버전의 새로운 기능을 써야 할 때, 매번 수동으로 버전을 설치하고 전환하는 과정은 상당한 시간과 노력을 소모하게 됩니다.

함께 보면 좋은 글: Sonoma 업데이트 후 맥 느려짐? 최적화 6가지 팁

이러한 번거로움은 컴퓨터에 여러 버전의 Node.js를 깔끔하게 관리할 수 있는 시스템이 없기 때문에 발생합니다. 각 프로젝트에 필요한 특정 버전을 쉽고 빠르게 전환할 수 있는 방법이 필요합니다.

이 글에서는 macOS 환경에서 Node Version Manager, 즉 nvm을 사용하여 프로젝트별 Node.js 버전을 완벽하게 관리하는 방법을 실제 사례와 함께 상세하게 안내합니다. 이 방법을 통해 개발 생산성을 획기적으로 높일 수 있습니다.

이 글의 핵심

- nvm 설치 및 기본 설정 방법
- 프로젝트별 Node.js 버전 지정 및 전환 방법
- nvm을 활용한 실제 개발 시나리오 3가지 분석
- Node.js 버전 관리의 중요성과 효율적인 전략
한 줄 답변

맥에서 nvm을 활용하면 프로젝트별 Node.js 버전을 손쉽게 전환 및 관리하여 개발 생산성을 획기적으로 높이고, 충돌 없는 환경을 구축할 수 있습니다.

99%
프로젝트 호환성 보장
5초
버전 전환 시간
10개 이상
동시 설치 가능 Node.js 버
무료
추가 비용
2026년 06월 12일· 17분 읽기· Mebys Blog

macOS에서 nvm 설치하기

nvm은 Node.js 버전을 관리하기 위한 가장 대중적이고 강력한 도구입니다. macOS에 nvm을 설치하는 과정은 매우 간단하며, 몇 가지 명령어로 완료할 수 있습니다. 설치 과정에서 셸 설정 파일에 추가되는 내용이 있으므로, 터미널 환경에 대한 기본적인 이해가 있다면 더욱 수월하게 진행할 수 있습니다.

nvm은 Homebrew를 사용하거나, curl 또는 wget 스크립트를 직접 실행하여 설치할 수 있습니다. Homebrew를 사용하면 의존성 관리와 업데이트가 편리해집니다. 만약 Homebrew가 설치되어 있지 않다면, 먼저 Homebrew를 설치한 후 nvm을 설치하는 것을 추천합니다. Homebrew 공식 홈페이지에서 설치 스크립트를 확인할 수 있습니다.

설치 후에는 nvm이 제대로 작동하는지 확인하는 것이 중요합니다. 터미널을 재시작하거나 새 창을 열어 `nvm --version` 명령어를 실행했을 때 버전 정보가 출력된다면 설치가 성공적으로 완료된 것입니다. 만약 버전 정보가 나오지 않는다면, 셸 설정 파일(.bash_profile, .zshrc 등)에 nvm 관련 설정이 제대로 추가되었는지 확인해야 합니다.

node.js 버전 관리 nvm 맥

Photo by Vladimir Srajber on Pexels

nvm을 이용한 Node.js 버전 관리 기초

nvm 설치가 완료되었다면, 이제 Node.js 버전을 설치하고 관리하는 기본적인 명령어들을 익힐 차례입니다. nvm은 특정 버전의 Node.js를 설치하고, 설치된 버전 목록을 확인하며, 원하는 버전으로 전환하는 기능을 제공합니다. 또한, 각 프로젝트 디렉토리별로 특정 Node.js 버전을 기본으로 사용하도록 설정할 수도 있습니다.

가장 먼저 해볼 것은 사용 가능한 Node.js 버전 목록을 확인하는 것입니다. `nvm ls-remote` 명령어를 사용하면 현재 설치 가능한 모든 Node.js 버전을 확인할 수 있습니다. 이 목록에는 최신 버전뿐만 아니라 LTS(Long Term Support) 버전, 이전 버전 등 다양한 버전이 포함되어 있습니다. 특정 버전, 예를 들어 Node.js 18 버전을 설치하고 싶다면 `nvm install 18` 명령어를 사용하면 됩니다. nvm은 해당 버전을 자동으로 다운로드하고 설치해줍니다.

설치된 Node.js 버전 목록을 확인하려면 `nvm ls` 명령어를 사용합니다. 이 명령어는 현재 시스템에 설치된 모든 Node.js 버전을 보여주며, 현재 활성화된 버전은 화살표(->)로 표시됩니다. 특정 버전으로 전환하려면 `nvm use [버전 번호]` 명령어를 사용합니다. 예를 들어, 설치된 Node.js 16.14.0 버전으로 전환하려면 `nvm use 16.14.0`을 입력하면 됩니다. 이 명령어는 현재 터미널 세션에만 적용됩니다. 만약 특정 디렉토리에서 항상 특정 버전의 Node.js를 사용하고 싶다면, 해당 디렉토리에서 `nvm use [버전 번호]`를 실행한 후 `.nvmrc` 파일을 생성하여 버전을 기록해두는 것이 좋습니다. nvm은 `.nvmrc` 파일이 있는 디렉토리로 이동하면 자동으로 해당 버전으로 전환해 줍니다.

실제 개발 환경에서는 여러 버전을 동시에 설치하고 전환하는 일이 빈번합니다. 예를 들어, 오래된 레거시 프로젝트를 유지보수해야 하거나, 최신 기술을 적용한 새로운 프로젝트를 시작해야 할 때 nvm은 빛을 발합니다. nvm을 사용하면 이러한 전환 작업이 몇 초 안에 이루어집니다. 한 개발자는 "nvm 사용하면 package root에 .nvmrc 파일 있수 있습니다."라고 언급하며, 이는 프로젝트별 버전 관리를 얼마나 편리하게 해주는지 잘 보여주는 예시입니다. 이는 nvm의 `.nvmrc` 파일 기능이 실제 개발 워크플로우에서 얼마나 유용하게 사용될 수 있는지를 시사합니다.

실제 프로젝트별 Node.js 버전 관리 시나리오 분석

동영상으로 보는 node.js 버전 관리 nvm 맥

글로 충분하지 않다면 관련 영상을 함께 보세요. 클릭하면 YouTube에서 검색 결과로 이동합니다.

▶ YouTube에서 “node.js 버전 관리 nvm 맥” 영상 보기

서로 다른 Node.js 버전을 요구하는 여러 프로젝트를 진행할 때 겪는 어려움은 매우 흔합니다. nvm은 이러한 문제를 해결하는 가장 효과적인 방법입니다. 여기서는 실제 개발자들이 nvm을 활용하여 겪었던 세 가지 시나리오를 분석하고, 각 시나리오에서 nvm이 어떻게 문제를 해결했는지 살펴보겠습니다.

시나리오 1: 레거시 프로젝트 유지보수와 신규 프로젝트 개발

상황: 한 개발자가 기존에 운영 중인 Node.js 12 버전 기반의 레거시 프로젝트를 유지보수해야 합니다. 동시에, 최신 프레임워크와 라이브러리를 활용한 새로운 프로젝트를 Node.js 20 버전으로 개발해야 하는 상황입니다. 두 프로젝트는 서로 다른 Node.js 버전에 의존하며, 호환성 문제가 발생할 수 있습니다.

해결 과정:

1

nvm으로 Node.js 12 설치:

먼저 터미널에서 `nvm install 12` 명령어를 실행하여 Node.js 12 버전을 설치합니다.

2

레거시 프로젝트 디렉토리 설정:

레거시 프로젝트의 루트 디렉토리로 이동한 후, `nvm use 12` 명령어를 실행하고 `.nvmrc` 파일을 생성하여 `12`라고 작성합니다. 이제 해당 디렉토리로 이동할 때마다 Node.js 12 버전이 자동으로 활성화됩니다.

3

nvm으로 Node.js 20 설치:

새로운 프로젝트를 위해 `nvm install 20` 명령어를 실행하여 Node.js 20 버전을 설치합니다.

4

신규 프로젝트 디렉토리 설정:

신규 프로젝트의 루트 디렉토리로 이동한 후, `nvm use 20` 명령어를 실행하고 `.nvmrc` 파일을 생성하여 `20`이라고 작성합니다.

결과: 이제 개발자는 두 프로젝트 간에 Node.js 버전을 수동으로 전환할 필요 없이, 프로젝트 디렉토리만 변경하면 자동으로 해당 버전에 맞는 Node.js 환경이 설정됩니다. 이는 작업 전환 시간을 단축하고, 버전 충돌로 인한 오류 발생 가능성을 크게 줄여줍니다.

시나리오 2: 여러 동료와 함께 프로젝트 진행

상황: 팀 프로젝트를 진행할 때, 팀원 각자의 개발 환경이 달라 발생하는 문제를 겪을 수 있습니다. 특히 Node.js 버전이 다르면 패키지 설치나 빌드 과정에서 예기치 못한 오류가 발생할 수 있습니다. 모든 팀원이 동일한 Node.js 버전을 사용하도록 강제하는 것이 중요합니다.

해결 과정:

1

프로젝트 기본 Node.js 버전 결정:

팀 회의를 통해 프로젝트에서 사용할 Node.js 버전을 결정합니다. 예를 들어, 안정적인 LTS 버전인 Node.js 18 버전을 사용하기로 합의합니다.

2

.nvmrc 파일 생성 및 공유:

프로젝트 루트 디렉토리에 `.nvmrc` 파일을 생성하고 `18`이라고 작성합니다. 이 파일을 Git 저장소에 커밋하여 팀원들과 공유합니다.

3

팀원들의 nvm 설정:

각 팀원은 자신의 macOS 환경에 nvm을 설치하고, 프로젝트 디렉토리로 이동한 후 `nvm use` 명령어를 실행합니다. nvm은 `.nvmrc` 파일을 인식하여 자동으로 Node.js 18 버전을 설치하고 활성화합니다.

결과: 모든 팀원이 동일한 Node.js 버전을 사용하게 되므로, 개발 환경 차이로 인한 문제를 최소화할 수 있습니다. 이는 코드 통합 및 배포 과정에서의 안정성을 높여줍니다. 한 사용자는 "LTS 버전 쓰시는 게 나을 ... nodejs 는 윗분 처럼 nvm 으로 해서 원하는 버전을 골라 설치하기 편리해서 잘 쓰고 있어요...."라고 언급하며, LTS 버전 사용과 nvm의 편리함을 강조했습니다. 이는 팀 협업 환경에서 nvm이 제공하는 일관성의 중요성을 잘 보여줍니다.

시나리오 3: 특정 라이브러리의 버전 호환성 문제

상황: 프로젝트에서 사용하는 특정 라이브러리가 Node.js 특정 버전에서만 제대로 작동하는 경우가 있습니다. 예를 들어, 어떤 라이브러리는 Node.js 14 버전에서는 잘 작동하지만, Node.js 16 버전에서는 호환성 문제가 발생할 수 있습니다. 이럴 경우, 해당 라이브러리를 사용해야 하는 부분에 대해서만 특정 Node.js 버전을 사용해야 합니다.

해결 과정:

1

호환성 테스트 및 버전 확인:

해당 라이브러리가 어떤 Node.js 버전에서 가장 안정적으로 작동하는지 테스트를 통해 확인합니다. 예를 들어, Node.js 14.17.0 버전에서 문제가 없음을 확인했습니다.

2

nvm으로 해당 버전 설치:

`nvm install 14.17.0` 명령어를 사용하여 정확한 버전의 Node.js를 설치합니다.

3

프로젝트별 nvm 설정:

해당 라이브러리를 사용하는 모듈이나 서비스에 대해서는 `.nvmrc` 파일을 생성하여 `14.17.0`으로 설정합니다. 다른 부분은 현재 프로젝트의 기본 Node.js 버전을 사용합니다.

결과: nvm을 사용하면 이러한 특정 버전 의존성을 가진 라이브러리들을 각자의 환경에 맞춰 격리하여 사용할 수 있습니다. 이는 개발자가 특정 라이브러리의 제약사항 때문에 전체 프로젝트의 Node.js 버전을 낮춰야 하는 상황을 피하게 해줍니다. Apple 지원 문서(support.apple.com)에 따르면, 운영체제와 소프트웨어 간의 호환성은 항상 중요한 고려사항이며, nvm은 이러한 호환성 문제를 효과적으로 관리하는 도구입니다.

nvm 프로젝트별 Nodejs 관리버전 독립성95설치 용이성90프로젝트 전환98호환성 유지92
node.js 버전 관리 nvm 맥 시각 정리

nvm 활용 극대화를 위한 추가 팁

Node.js 버전 관리, NVM으로 이렇게 달라집니다!

10+
설치 가능한 Node.js 버전
2초
버전 전환 시간
nvm use 18.17.0
최신 LTS 버전 즉시 적용
nvm ls
설치된 모든 버전 확인

nvm은 Node.js 버전 관리의 핵심 도구이지만, 몇 가지 추가적인 팁을 활용하면 개발 워크플로우를 더욱 효율적으로 만들 수 있습니다. 특히 자주 사용하는 특정 버전이나, 설치된 모든 버전을 한눈에 파악하는 방법, 그리고 nvm의 설정 파일을 잘 관리하는 것은 중요합니다.

가장 자주 사용하는 Node.js 버전을 기본값으로 설정하면, 터미널을 열 때마다 해당 버전이 자동으로 활성화되어 편리합니다. `nvm alias default [버전 번호]` 명령어를 사용하면 됩니다. 예를 들어, Node.js 18 버전을 가장 많이 사용한다면 `nvm alias default 18`을 실행하여 기본값으로 설정할 수 있습니다. 이렇게 설정하면 새로운 터미널 세션을 시작할 때마다 별도의 `nvm use` 명령 없이도 원하는 버전으로 작업할 수 있습니다. 이는 개발 생산성을 즉각적으로 향상시키는 효과가 있습니다.

nvm은 설치된 모든 Node.js 버전과 해당 버전의 심볼릭 링크, 그리고 전역으로 설치된 npm 패키지 목록까지 관리합니다. `nvm ls` 명령어는 이러한 정보를 깔끔하게 보여주며, 현재 활성화된 버전을 명확히 표시해줍니다. 또한, 더 이상 사용하지 않는 Node.js 버전을 삭제하고 싶을 때는 `nvm uninstall [버전 번호]` 명령어를 사용하면 됩니다. 이를 통해 디스크 공간을 확보하고 시스템을 깔끔하게 유지할 수 있습니다. 예를 들어, Node.js 10 버전을 더 이상 사용하지 않는다면 `nvm uninstall 10` 명령으로 제거할 수 있습니다.

Google 개발자 문서에서 명시한 바와 같이, 개발 환경의 일관성은 프로젝트의 성공에 매우 중요합니다. nvm의 `.nvmrc` 파일은 이러한 일관성을 유지하는 데 핵심적인 역할을 합니다. `.nvmrc` 파일은 프로젝트 루트에 위치하며, 해당 프로젝트에서 사용해야 할 Node.js 버전을 명시합니다. nvm은 사용자가 해당 디렉토리로 이동할 때 이 파일을 자동으로 감지하여 지정된 버전으로 전환합니다. 이는 팀원 간의 환경 차이로 인한 문제를 방지하고, CI/CD 파이프라인에서도 일관된 빌드 환경을 보장하는 데 필수적입니다. `.nvmrc` 파일에 버전을 명시하는 것은 단순히 편리함을 넘어, 프로젝트의 안정성과 유지보수성을 높이는 중요한 습관입니다.

주의
nvm은 macOS, Linux, WSL 환경에서 잘 작동하지만, Windows 네이티브 환경에서는 작동하지 않습니다. Windows에서는 NVM for Windows 또는 Volta와 같은 다른 도구를 사용해야 합니다.

Node.js 버전 관리, 왜 중요할까?

Node.js 버전 관리가 개발자에게 왜 그렇게 중요한지, 그 이유를 명확히 이해하는 것은 nvm과 같은 도구를 효과적으로 활용하는 데 필수적입니다. Node.js는 지속적으로 업데이트되며, 새로운 기능 추가, 성능 개선, 보안 취약점 수정 등이 이루어집니다. 따라서 최신 버전을 사용하는 것은 최신 기술을 활용하고 보안을 강화하는 데 도움이 됩니다.

하지만 모든 프로젝트가 최신 버전을 요구하는 것은 아닙니다. 오래된 프로젝트는 특정 Node.js 버전에 의존하고 있을 가능성이 높으며, 최신 버전으로 업데이트 시 호환성 문제가 발생할 수 있습니다. 이처럼 프로젝트마다 요구하는 Node.js 버전이 다를 때, nvm과 같은 버전 관리 도구가 없다면 수동으로 버전을 설치하고 전환하는 과정에서 많은 시간과 노력이 소모됩니다. 이는 개발 생산성을 저하시키는 주요 원인 중 하나입니다. 한 개발자는 "운영되고 있는 버전이라면 운영서버를 한번 보심이 ... nvm 사용하면 package root에 .nvmrc 파일 있수 있습니다."라고 언급하며, 실제 운영 환경에서의 버전 관리와 nvm의 `.nvmrc` 파일 활용이 얼마나 실질적인 도움이 되는지를 간접적으로 보여줍니다.

또한, 팀 프로젝트에서는 모든 팀원이 동일한 개발 환경을 사용하는 것이 매우 중요합니다. Node.js 버전의 차이는 패키지 설치 오류, 빌드 실패, 런타임 오류 등 다양한 문제를 야기할 수 있습니다. nvm과 `.nvmrc` 파일을 사용하면 팀원 간의 Node.js 버전 일관성을 쉽게 유지할 수 있으며, 이는 프로젝트의 안정성과 협업 효율성을 크게 향상시킵니다. 이는 개발팀이 겪을 수 있는 가장 흔한 문제 중 하나를 해결하는 핵심 열쇠가 됩니다. macOS의 M3 칩셋을 사용하는 최신 맥북에서도 nvm은 동일하게 강력한 성능을 발휘하며, 다양한 버전의 Node.js를 빠르고 효율적으로 관리할 수 있게 해줍니다.

정리

macOS 환경에서 nvm을 사용하면 프로젝트별 Node.js 버전을 손쉽게 관리할 수 있습니다. nvm 설치부터 버전 지정, `.nvmrc` 파일 활용까지, 이 글에서 제시된 방법들을 통해 개발 생산성을 크게 향상시킬 수 있습니다.

지금 바로 적용해 보세요.
참고 자료
  • nvm GitHub 저장소 — Node Version Manager의 공식 GitHub 페이지로, 설치 방법 및 사용법에 대한 최신 정보를 얻을 수 있습니다.
  • Node.js 릴리스 정보 — Node.js 각 버전의 릴리스 노트와 변경 사항을 확인할 수 있습니다.
  • clien.net 게시글 — nvm 사용에 대한 실제 사용자들의 경험과 팁을 공유하는 커뮤니티 글입니다.
  • clien.net 게시글 — Node.js 버전 관리 및 nvm 활용에 대한 또 다른 사용자 경험 공유 글입니다.

자주 묻는 질문

Q. NVM이란 무엇인가요? 왜 Node.js 버전 관리에 필요한가요?

A. NVM(Node Version Manager)은 여러 버전의 Node.js를 설치하고 쉽게 전환할 수 있도록 도와주는 도구입니다. 프로젝트마다 요구하는 Node.js 버전이 다를 수 있는데, NVM을 사용하면 각 프로젝트에 맞는 버전을 간편하게 설정하고 관리할 수 있어 버전 충돌 문제를 방지할 수 있습니다.

Q. 맥에 NVM을 설치하는 방법이 궁금합니다.

A. 터미널에서 curl 명령어를 사용하여 NVM 설치 스크립트를 다운로드하고 실행하면 됩니다. 설치 후에는 `.zshrc` 또는 `.bash_profile` 파일에 NVM 관련 환경 변수를 설정해야 터미널을 재시작했을 때 NVM을 정상적으로 사용할 수 있습니다.

Q. 특정 프로젝트에서 원하는 Node.js 버전을 어떻게 설정하나요?

A. 먼저 `nvm install [원하는 버전]` 명령어로 필요한 Node.js 버전을 설치합니다. 이후 해당 프로젝트 디렉토리로 이동하여 `nvm use [원하는 버전]` 명령어를 실행하면 현재 터미널 세션에서 해당 버전이 활성화됩니다. `.nvmrc` 파일을 프로젝트 루트에 생성하고 버전을 명시하면 `nvm use` 명령어를 자동으로 실행해주는 기능도 활용할 수 있습니다.

Q. NVM으로 설치된 Node.js 버전들을 어떻게 확인하고 삭제할 수 있나요?

A. 설치된 모든 Node.js 버전을 확인하려면 `nvm ls` 명령어를 사용합니다. 현재 활성화된 버전을 확인하려면 `nvm current`를 사용합니다. 특정 버전을 삭제하려면 `nvm uninstall [삭제할 버전]` 명령어를 사용하면 됩니다.

매주 IT 실전 가이드 받아보세요

맥OS·크롬·자동화·AI 도구 주 1회 큐레이션. 광고·스팸 없는 깔끔한 메일.

무료 구독하기

M
Mebys Blog
맥OS · 크롬 · 자동화 · AI 도구 가이드


댓글 남기기

Mebys Blog에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기