[node.js] node.js에 대한 가상 환경이 있습니까?

위키 모듈 페이지를 검색했지만 virtualenv (python) 또는 rvm과 비슷한 것을 찾을 수 없습니다.

여기 누구든지 자신의 환경에서 node.js를 분리합니까? 시스템 전체에 npm을 설치하고 싶지 않습니다.



답변

시스템 전체 npm 패키지가 주요 문제라면 npm과 함께 매우 멋진 ‘번들’명령을 사용하는 것이 좋습니다. 이것은 rvm이 아닌 gem을 고정하거나 레일에서 번 들러를 사용하는 것에 더 가깝습니다.

정말 쉽습니다. package.json 파일을 작성하십시오.

{ "name": "yourapp", "version": "0.0.1", "dependencies": {"jade": "0.4.1"}}

그런 다음 다음을 실행하십시오.

npm bundle vendor

또는 npm 버전이 1.0 이상인 경우 다음을 실행하십시오.

npm install

공급 업체 디렉토리에 고정합니다. 다음을 사용하십시오.

require.paths.unshift('./vendor');


답변

nodeenv -node.js의 가상 환경 (아날로그 virtualenv )


답변

도움이 될 수있는 일부 노드 버전 관리 시스템도 있습니다.

Nave를 확인하십시오 https://github.com/isaacs/nave

NVM은 https://github.com/creationix/nvm 에서도 사용할 수 있습니다

n https://github.com/visionmedia/n 이라는 것도 있습니다


답변

bxjx의 답변은 개념적으로 정확합니다. 그러나 bundle 명령은 더 이상 디렉토리를 사용하지 않습니다. 그것은 항상 으로 패키지 상품 node_modules이 NPM이 나중에 발견 (두 번 설치 종속성을 피할 수 있습니다) 여기서 알 수 있도록, 폴더.

모든 솔루션에는 npm 및 nave “시스템 전체”(즉, 어딘가에 PATH있을 수 있음 ~)를 설치 한 다음 가상 환경에 특정 종속성 만 설치하는 것이 포함 됩니다.

나는 github 문제에 대해 더 철저히 대응했다 .

tl; dr : 유스 케이스는 유효하고 도움이되며 대부분 존재하지만 가능한 한 잘 제공되지는 않습니다. 우리는 그것을 생각하고 올바르게해야합니다.


답변

항상 전 세계적으로 종속성을 설치할 필요는 없습니다. 일반적으로 npm 패키지가 제공하는 명령을 사용할 수 있기 때문에 권장되지만 로컬 ( node_modules) 디렉토리 에 설치하는 경우 이러한 명령을 사용할 수도 있습니다.이 명령은 node_modules/.bin/디렉토리 에만 적용 되므로 node_modules/.bin/<command>, 이는 성가신 일이지만 PATH환경 변수 에이 경로를 추가 할 수 있습니다 .

export PATH=node_modules/.bin:$PATH

그런 다음 입력 만하면 <command>작동합니다!

실제로 .bin디렉토리 의 절대 경로를 반환하는 npm 명령이 있습니다 .

$ npm bin
/path/to/node_modules/.bin

이 명령은 프로젝트의 하위 디렉토리에있을 때도 작동하며 node_modules/.bin상위 디렉토리에서 찾은 첫 번째 디렉토리 를 반환합니다 .

에이 별명을 .bashrc추가하여 .bin/디렉토리를 자동으로 다음에 추가 할 수 있습니다 PATH.

alias nodebin='export PATH=$(npm bin):$PATH'

따라서 node_modules/루트에 디렉토리가있는 프로젝트의 디렉토리에있을 때 디렉토리에있는 nodebin모든 명령을 입력 한 다음 사용할 수 있습니다 .bin/!


답변

더 좋은 방법이 있습니다.

Python Virtualenv에 Node.js 및 npm 설치

이제 전역 빈 환경을 망칠 필요없이 노드 도구를 사용할 수 있습니다.


답변

당신이 그것을 간단하게 좋아한다면, 나는 visionmedia의 n을 추천 합니다.

https://github.com/visionmedia/n