使用npm私有伺服器儲存公司內部強業務型別元件(一):npm私有伺服器搭建
阿新 • • 發佈:2018-12-14
1:安裝centOS虛擬機器 2:安裝完成虛擬機器後完成後開啟系統網絡卡: 進入到/etc/sysconfig/network-scprits/ 開啟ifcfg-ens33檔案 找到 ONBOOT=NO 改成 ONBOOT=yes 3:更新yum: yum update 4:修改虛擬機器改為橋接模式:方便外部訪問內部web服務 5:安裝net-tools 以方便使用ifconfig命令 yum install net-tools 6:安裝wget yum install wget 7:安裝Node /usr/bin中裝的是系統預裝的可執行程式 /usr/local/bin中是使用者放置自己的可執行程式的地方 cd /usr/local/src wget https://npm.taobao.org/mirrors/node/v8.9.3/node-v8.9.3-linux-x64.tar.xz tar xvf node-v8.9.3-linux-x64.tar.xz mv node-v8.9.3-linux-x64 nodejs 配置全域性環境使用node和npm ln -s /usr/local/src/nodejs/bin/node /usr/local/bin/node ln -s /usr/local/src/nodejs/bin/npm /usr/local/bin/npm 配置npm下載包的全域性環境變數 cd / vi .bash_profile export PATH=$PATH:<PATH 1>:<PATH 2>:---:/usr/local/src/nodejs/bin source .bash_profile 注意:每次重啟後 .bash_profile裡面的設定好像不會生效,需要手動執行一下 source .bash_profile 8:安裝pm2 npm i –g pm2 9:安裝verdaccio(用來設定npm私有伺服器) npm i –g verdaccio 10:防火牆開啟4873埠 firewall-cmd --zone=public --add-port=4873/tcp --permanent firewall-cmd –reload firewalld的基本使用 啟動: systemctl start firewalld 關閉: systemctl stop firewalld 檢視狀態: systemctl status firewalld 開機禁用 : systemctl disable firewalld 開機啟用 : systemctl enable firewalld 10修改verdaccio配置 新增本地監聽 開啟/root/.config/verdaccio/config.yaml,在最後新增listen:0.0.0.0:4873 配置不允許註冊 開啟config.yaml所在目錄,檢視是否存在htpasswd檔案,沒有則建立 在裡面輸入: a:$6TMNjhsdfj:autocreated 2018-12-07T10:07:58.382Z 其中a是使用者名稱,$6TMNjhsdfj是使用者名稱加密碼的base64 encode,可以在這個網站生成: http://www.htaccesstools.com/htpasswd-generator/ 開啟config.yaml,找到max_users選項,將前面的#去掉,設定max_users的值是-1(-1表示不允許使用者註冊,我們在這裡只通過手動在htpasswd裡面新增),配置好後:執行verdaccio -c config.yaml來使配置生效 11 客戶端開啟verdaccio http://你的伺服器ip:verdaccio埠 12 客戶端npm使用 切換源: npm set registry http://你的伺服器ip:verdaccio埠 登入: npm login –registry http://你的伺服器ip:verdaccio埠 釋出: npm publish 13:下載npm包 將npm源切換好後 直接npm install 包名 可直接下載 14:npm切換回預設源 npm config set registry https://registry.npmjs.org