如何在公司搭建npm本地倉庫--超詳細教程

背景:

在公司中,爲了提升工做效率,咱們會作一些公用的js庫,或者vue組件,react組件.這樣下次再用到的時候能夠直接npm install一下就能夠了,大大提升工做效率.vue

然而把這些東西直接放在npmjs.com上面,全部人均可以看到,缺少保密性.那麼問題來了,可不能夠在公司局域網搭建一個npm倉庫呢,答案固然是能夠的node

基於我前幾天搭建的npm倉庫,這裏給你們介紹一下python

環境:

  • CentsOS 6.5
  • gcc
  • g++
  • nodejs
  • make
  • nrm
  • python 2.7
  • sinopia

注意事項(踩過的坑)

  • make可能有些linux沒有默認安裝,須要手動安裝一下,不然沒法編譯
  • python必須是2.x版本,3.x版本不支持sinopia

正式開始(yum推薦使用阿里雲鏡像,npm推薦淘寶鏡像)

  1. 安裝一些必要的包
yum install -y make gcc gcc-c++ nodejs
npm i sinopia nrm -g
複製代碼
  1. 運行sinopia,它是本地npm倉庫的核心
sinopia
複製代碼

這個時候,打開http://localhost:4873能夠看到sinopia自帶的一個web頁面,能夠顯示本地有哪些包,而且能夠登陸,然而如今尚未註冊,接下來就是註冊sinopiareact

  1. nrm是一個倉庫管理工具,nrm ls命令能夠查看電腦上的全部npm倉庫,咱們先新建本地倉庫[name]是倉庫的名稱,好比localNpm,或者用公司名.[url]是創建倉庫的那臺電腦的ip地址加端口,好比http://192.168.2.100:4873
nrm add [name] [url]
nrm use [name]
複製代碼
  1. 接下來就能夠添加用戶了
npm adduser
複製代碼

運行這句話會提示輸入用戶名,密碼,郵箱,輸入完成就能夠了.之後須要登陸的話就運行linux

npm login
複製代碼

退出登陸運行c++

npm logout
複製代碼
  1. 發佈包 咱們先新建一個文件夾,注意發佈包的名子不能夠是別人已經發布過的,好比vue,否則會報錯
npm init -y
npm publish
複製代碼

npm init -y 能夠初始化本地倉庫,會生成package.json文件,裏面包含一些基本的信息web

npm publish 顧名思義,就是把包發佈到本地倉庫,不出意外的話,如今打開http://192.168.2.100:4873就會發現多出了一個包,就是剛剛發佈的那個shell

  1. 使用包,和咱們平時使用npm的方式是同樣的
npm install [name] -S
複製代碼
  1. 更新包,代碼更新了以後怎麼發佈新版本呢,很簡單,只須要在package.json文件裏修改一下版本號便可,好比1.0.0 => 1.0.1,而後
npm publish
複製代碼
  1. 刪除包,包發佈完,若是不想用了,該怎麼刪除呢,很簡單,只須要
npm unpublish [name]
複製代碼

便可,注意這裏的登陸用戶必須是發佈包的做者npm

教程到此就結束了,有疑問的小夥伴歡迎留言哦

相關文章
相關標籤/搜索