內網npm私服(verdaccio)搭建及依賴包的上傳
有互聯網的電腦操作(win10)
前提條件
安裝nodeJS
注:有說使用npmbox做的,但是該項目已經停止維護,而且在無互聯網的機器上運行仍然會去請求網絡。所以這裏沒有使用npmbox。
安裝verdaccio
npm install -g verdaccio
啓動設置更新私服
# 啓動 verdaccio # 設置npm使用的源爲本地私服 npm set registry http://localhost:4873/
下載及壓縮相關包
進入到需要更新包的項目,如果有node_modules目錄,先進行刪除。執行命令更新包:
npm install
壓縮目錄 C:\Users\用戶名\AppData\Roaming\verdaccio\ 得到 verdaccio.zip。
壓縮目錄 C:\Users\用戶名\AppData\Roaming\npm 得到 npm.zip。
將 verdaccio.zip 、npm.zip 拷貝到無互聯網的電腦。
無互聯網的電腦操作(win7)
前提條件
目錄儘可能不要有空格,可能會導致nssm創建的系統服務無法啓動。
解壓相關包
將 npm.zip 解壓到 C:\Users\用戶名\AppData\Roaming\npm 。
將 verdaccio.zip 解壓到 C:\Users\用戶名\AppData\Roaming\verdaccio\ 。
檢查下列文件或目錄是否存在,並且內容不爲空。
文件:C:\Users\用戶名\AppData\Roaming\npm\verdaccio
文件:C:\Users\用戶名\AppData\Roaming\npm\verdaccio.cmd
目錄:C:\Users\用戶名\AppData\Roaming\npm\node_modules\verdaccio
文件:C:\Users\用戶名\AppData\Roaming\verdaccio\config.yaml
目錄:C:\Users\用戶名\AppData\Roaming\verdaccio\storage
修改verdaccio配置文件
打開文件 C:\Users\用戶名\AppData\Roaming\verdaccio\config.yaml
增加如下內容
# listen port listen: 0.0.0.0:4873
創建服務
將nssm.exe添加到環境變量path中。
以管理員身份運行命令行。
執行命令
nssm install verdaccio
打開安裝服務界面,必填到配置如下:
其他配置可根據自己需要單獨進行配置。
全都填寫完畢後選擇 "install service"。
nssm start verdaccio
提示啓動成功,則繼續。
Path:C:\Program Files\nodejs\node.exe
Startup directory:C:\Users\用戶名\AppData\Roaming\npm\
Arguments:C:\Users\用戶名\AppData\Roaming\npm\node_modules\verdaccio\build\lib\cli.js -c C:\Users\用戶名\AppData\Roaming\verdaccio\config.yaml
解除防火牆對verdaccio的端口限制
輸入命令後回車,打開windows防火牆
firewall.cpl
選擇“高級設置”
根據實際情況新建入站規則和出站規則。