서론
현재 회사에서 진행하는 프로젝트와 개인적으로 진행하는 사이드 프로젝트는 제각각 Node 버전이 다르다. 회사에서 여러 개의 프로젝트를 같이 진행하고 있다.
(1) node 16.16.0 (backend - node express / frontend - react + vitejs)

(2) node 14.17.5 (backend - go echo / front - react + webpack)

(3) node 16.15.0 (backend - not yet / front - svelte+ vitejs)

본론
별도의 VM을 통해 관리하면 모를까, 하나의 서버에서 프로젝트별로 node 버전 적용해서 개발하기란 쉽지 않았다. Visual Studio Code 서버를 띄워 모든 개발을 거기서 하므로 더욱이 불편했다.
GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions
Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions - GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active nod...
GitHub - tj/n: Node version management
Node version management. Contribute to tj/n development by creating an account on GitHub.
위 링크와 같이 NVM(Node Version Manager), n(Node Version Management)을 사용해서 변경해주는 것 또한 한두 번이지 프로젝트가 많아질수록 귀찮아졌다.
그 와중에 서칭하던 중 Python의 virtualenv같이 Node 또한 env 별로 관리해주는 툴을 발견하게 되었다.
GitHub - ekalinin/nodeenv: Virtual environment for Node.js & integrator with virtualenv
Virtual environment for Node.js & integrator with virtualenv - GitHub - ekalinin/nodeenv: Virtual environment for Node.js & integrator with virtualenv
패키지 이름은 nodeenv로 python이 설치되어있어야한다.
최신 리눅스 운영체제에는 python 3 버전이 설치되어 있기 때문에 pip3를 설치하고 진행하면 된다.
nodeenv 설치
사용방법
env 생성
env 적용
마치며
이로써 더욱 쾌적한 개발 환경이 구성되었다 :) !
회사에서 개발하고, 집에서 쉴 때도 개발하고... 취미가 뭐냐고 물으면 "개발...!" 이라고 하게 된다.
