[note] Verdaccio
Verdaccio @ Github
基本使用
Verdaccio 是一個簡單輕量化本機端的 npm-registry。
$ npm install --global verdaccio
$ verdaccio # 啟動 npm-registry,預設 localhost:4873
進到 localhost:4873 後根據指令操作:
$ npm adduser --registry http://localhost:4873/ # 建立 user
從 verdaccio 安裝套件:
$ npm install --registry http://localhost:4873 <package-name>
建立 .npmrc
,讓它知道要推到的是 local 的 npm:
// .npmrc
registry=http://localhost:4873
或者透過 CLI:
$ npm publish --registry 'http://localhost:4873/'
$ lerna publish from-package --registry 'http://localhost:4873'
如果要移除某個套件:
$ npm unpublish --registry http://localhost:4873/ --force [package-name]
訣竅
413 Payload Too Large:設定 Max Body Size
Verdaccio 預設可以上傳的 package size(Max Body Size)是 10mb
,如果 package 超過這個大小會 publish 上去,顯示 413 Payload Too Large 的錯誤:
這時候可以在 Verdaccio 的 config 檔中透過 max_body_size
來把可以上傳的檔案大小加大。
JavaScript heap out of memory:調整 Node 可以使用的記憶體
server 在執行 Verdaccio 時,可能會碰到 Node 能使用的記憶體不夠的問題(不一定是裝置本身的記憶體不夠,而是 Node 能使用的不夠):
這時候可以透過設定 NODE_OPTIONS
增加 Node 可以使用的記憶體空間:
CPU 或記憶體不足
如果發現 CPU 或 memory 不足,就把機器開大: