1. 程式人生 > >使用cnpm搭建私有NPM倉庫 釋出npm包

使用cnpm搭建私有NPM倉庫 釋出npm包

關於如何使用cnpm搭建私有的npm倉庫看這裡→ http://blog.fens.me/nodejs-cnpm-npm/

我本人還沒有機會真正實踐操作過,公司的npm倉庫是我老大搭建的,我這裡僅僅記錄關於如何釋出npm包以及在這過程中出現的問題以及解決的方案。

因為官方的npm上的模組是完全開源,但是公司自己專案有些模組與業務或者邏輯以及一些配置模組肯定不能開源啊,所以需要搭建私有的npm倉庫。

1.準備工作

首先安裝好npm 以及 cnpm 。

現在安裝node.js 裡會一起安裝好npm。

然後安裝cnpm 並且設定為公司地址

npm install -g cnpm --registry=http://192.168.1.xxx:xxxx/

2.伺服器配置賬號

然後管理員在伺服器上新增管理員賬號,並將賬號加入到maintainers 中

3.npm adduser 

首先輸入

npm adduser

接著會出現

username:輸入管理員在伺服器給你設定的使用者名稱

Password:密碼自行設定

Email:在伺服器給這個賬號設定的郵箱

新增成功後在這個路勁C:\Users\使用者名稱\下會有一個.npmrc檔案

裡面內容大概如下圖所示

4.npm login 

登入賬號

npm login

依次輸入剛才新增的賬號資訊

username:使用者名稱

password:密碼

email:郵箱

登入成功結果:

 

錯誤登陸情況:
npm ERR! network connect ETIMEDOUT 192.168.1.218:7001
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
解決:
伺服器問題,檢查伺服器是否啟動

5.cnpm publish

提交版本ctrl+shift+B 編譯後,再修改package.json 的版本號,接著在終端輸入 : 

cnpm publish

如果是成功提交顯示這樣的結果

+ @test/core1.0.2  大概顯示這樣的表示提交成功

未能提交成功情況

1. forbidden user hea not authorized to modify @test/core, please contact maintainers: admin: @test/core
解決:管理員還沒有將你的賬號新增到maintainers 中。

2.forbidden cannot modify pre-existing version: 1.0.10: @test/core
解決:沒有修改版本號就提交了

3.no_perms Private mode enable, only admin can publish this module: @test/core
解決:賬號不是管理員在伺服器新增的賬號

6.安裝提交上去的npm包

在專案中 請先注意你的registry是否指向公司的倉庫地址

你可以先 npm config get registry 檢視一下 確認沒錯了

npm install @tes/core

安裝完成

 

 2018年11月23號更新

關於如何搭建私有倉庫的請看這個

npm私有倉庫 配置verdaccio在docker環境

 

此隨筆乃本人學習工作記錄,如有疑問歡迎在下面評論,轉載請標明出處。

如果對您有幫助請動動滑鼠右下方給我來個贊,您的支援是我最大的動力。

 


更多專業前端知識,請上 【猿204