[node.js] 조직에서 npm과 함께 사용할 개인 저장소를 호스팅 할 수 있습니까?
Npm은 조직 내에서 사용하기에 훌륭한 플랫폼 인 것 같습니다. Nexus / Maven과 같이 개인 저장소가 가능한지 궁금합니다. Google에 아무것도 나타나지 않습니다 🙁
답변
나는 이것을 할 수있는 쉬운 방법이 없다고 생각합니다.
고궁 박물원 문서에서 보면 그것이 가능하다는 것을 우리에게 알려줍니다 :
개인 레지스트리를 실행할 수 있습니까?
예!
가장 쉬운 방법은 소파 데이터베이스를 복제하고 동일한 (또는 유사한) 디자인 문서를 사용하여 API를 구현하는 것입니다.
공식 CouchDB에서 연속 복제를 설정 한 다음 내부 CouchDB를 레지스트리 구성으로 설정하면 비공개 패키지 외에 게시 된 패키지를 읽을 수 있으며 기본적으로 내부적으로 만 게시됩니다. 전 세계에 볼 수있는 패키지를 게시하려면
--registry
해당 명령에 대한 구성을 재정의하면 됩니다.
시계 블로그에서 개인 npm 저장소를 만드는 방법 에 대한 훌륭한 자습서도 있습니다 .
편집 (2017-02-26) :
실제로 새로운 것은 아니지만 이제 NPM에서 개인 패키지를 호스팅 할 유료 요금제 가 있습니다.
수년에 걸쳐 NPM은 NPM을 기반으로 구축 된 거대한 프론트 엔드 생태계를 통해 Node.js가 아닌 많은 회사의 요소가되었습니다. 귀사에서 내부적으로 Java 프로젝트를 호스팅하기 위해 Sonatype Nexus 를 실행중인 경우 내부 NPM 패키지를 호스팅하는 데 사용할 수도 있습니다.
다른 옵션으로는 JFrog Artifactory 및 Inedo ProGet 이 있지만 사용하지는 않았습니다.
답변
https://github.com/isaacs/npmjs.org/ : npm 버전 v1.0.26에서는 개인 git 저장소 URL을 package.json 파일의 종속성으로 지정할 수 있습니다. 나는 그것을 사용하지 않았지만 피드백을 좋아할 것입니다. 해야 할 일은 다음과 같습니다.
{
"name": "my-app",
"dependencies": {
"private-repo": "git+ssh://git@yourgitserver.com:my-app.git#v0.0.1",
}
}
다음 포스트는 이것에 대해 이야기합니다 : 디버깅 가능 : 개인 npm 모듈
답변
이를 위해 npm 패키지를 쉽게 사용할 수 있습니다.
https://www.npmjs.org/package/sinopia
간단히 말해, Sinopia는 개인 / 캐싱 npm 리포지토리 서버로 구성없이 구성 할 수 있습니다.
Sinopia를 사용하여 다음을 수행 할 수 있습니다.
- 개인 패키지를 공개하지 않고 공개
- 사용 된 공용 패키지 만 캐시 (전체 공용 등록을 복제 할 필요가 없음)
- 내부적으로 작성된 수정 된 버전으로 공개 패키지를 대체하십시오.
답변
Verdaccio는 내가 찾던하고 그것이 자신의 답변을받을 권리가 무엇입니까) 그것은 Sinopia의 적극적으로 유지 포크 (매우 upvoted 대답은 여기에 ). 그것은이다 NPM 패키지와 NPM 레지스트리 및 찾을 수 있습니다
여기 : https://github.com/verdaccio/verdaccio ,
여기 : https://www.verdaccio.org ,
여기 : pnpm i -g verdaccio
또는
여기 :docker run -it --rm --detach --name verdaccio -p 4873:4873 verdaccio/verdaccio
답변
2015 년 4 월 14 일에 npm 개인 모듈 이 도입되었습니다.
개인 모듈에 대한 비용을 지불하면 다음을 수행 할 수 있습니다.
- 원하는만큼 개인 패키지를 호스팅
- 다른 유료 사용자에게 해당 패키지에 대한 읽기 권한 또는 읽기 / 쓰기 권한 부여
- 다른 유료 사용자가 귀하에게 읽기 권한을 부여한 모든 패키지를 설치하고 사용하십시오.
- 다른 유료 사용자가 귀하에게 쓰기 권한을 부여한 모든 패키지에 대해 공동 작업
물론, 그것은 무료입니다-현재 사용자 당 한 달에 7 $.
그리고 그것은 여전히 새로운 서비스입니다. 예를 들어 조직 계정에 대한 지원이 누락되었습니다 (2015 년 6 월 기준).
현재 개인 패키지는 개별 사용자 만 사용할 수 있지만 조직 계정에 대한 지원은 곧 제공 될 예정입니다. 그 동안 조직의 사용자를 자유롭게 작성하고 지원이있을 때 조직으로 업그레이드 할 수 있습니다.
따라서 완벽하지는 않지만 개인 패키지를 유지 관리 하는 공식 npm 솔루션이므로 언급 할 가치가 있습니다.
최신 정보
개별 사용자와 조직 모두를위한 Npm 개인 패키지 가 제공됩니다 .
- 무제한 공개 및 개인 패키지
- 월 $ 7 / 개발자
- 조직 이름을 기반으로 하나의 범위 이름을 포함합니다.
- @ org-name / foo에 대한 액세스 공개 및 제어
(면책 조항 : npm, Inc. 와 원격으로 제휴하지 않아도됩니다 )
답변
개인 npm 레지스트리를 지원하는 저장소 관리자 :