从后端那里要来了一个服务器,下面啥都没有,想要搭建一个npm私有化仓库 放一些公司我的项目的公共组件,还有我的项目的SDK,搞成库 引入到我的项目中去应用。这就开搞。
首先登录服务器,
搭建环境
第一步,装置nodejs
yum install -y epel-releaseyum install -y nodejs
node -v
查看一下
好家伙 版本这么低! 才6.17.1
降级一下版本, 装置一下nodejs
包管理工具
npm install -g n
罕用的一些命令:
n stable // 把以后零碎的 Node 更新成最新的 “稳固版本”n lts // 长期反对版n latest // 最新版n 10.14.2 // 指定装置版本n // 查看已装置的版本n rm 10.14.2 // 删除指定版本
命令行输出n
回车
抉择一个版本再次回车node -v
再次查看,版本显示还是v6.17.1
切换了版本怎么没变动!
百度, 发现以后版本不是最新的版本,而后曾经装置有了最新的版本,造成不失效的起因:
node默认的装置目录与应用管理工具n装置的目录不统一,
解决办法:
查看以后node装置门路
which node
而 n 默认装置门路是 /usr/local
,以后node
的装置门路与n
的门路不统一,须要通过通过N_PREFIX
变量来批改 n 的默认node装置门路。
编辑环境配置文件:vim ~/.bash_profile
批改node装置地位:在开端减少export PATH=/usr/local/bin:$PATH shift+:wq
保留退出
让新配置失效:source ~/.bash_profile
重新安装稳固版本:n stable
查看以后node版本:node -v
(曾经是最新的稳固版本了)
好了,能够开始闲事了,装置verdaccio
!
装置verdaccio
npm i -g verdaccio
命令行输出 verdaccio
回车 启动verdaccio
, 能够看到第一行的配置文件地址:
config file - /root/.config/verdaccio/config.yaml
在配置文件的最初一行加上listen: 0.0.0.0:4873
, 默认没有这一行的,只能在本机拜访,增加后能够通过外网拜访。
pm2
守护verdaccio
过程
- 装置pm2
npm install -g pm2
- 应用pm2启动verdaccio
pm2 start verdaccio
- 查看pm2 守护下的过程verdaccio的实时日志
pm2 show verdaccio
- 实时查看该门路下的日志命令
tail -f /home/admin/.pm2/logs/verdaccio-out-0.log
配置过程中有几个命令罕用到
netstat -tunlp // 查看所有的端口过程netstat -tunlp|grep 端口号 // 查看指定的端口号kill 端口号 // 杀死指定的端口号过程
telnet ip地址 端口号 // telnet须要装置, 查看该地址 该端口是否被应用// 例如telnet localhost 4873telnet 192.168.0.1 4873
这时候服务器配置好了,比方服务器的地址是192.168.0.1
, 失常在咱们浏览器拜访http://192.168.0.1:4873
就能够拜访到(端口要加,防火墙要敞开!)
治理源 公布包
接下来咱们就要公布包到咱们的私有化仓库下面去!
先装置一个切换npm
源的工具nrm
npm i nrm -gnrm list 或者 nrm ls // 查看源列表nrm add [name] [源url] // 增加源nrm use [name] // 应用源nrm del [name] // 删除源
应用nrm use
切换到刚创立的私有化仓库的地址
登录:
npm whoami // 查看以后登录用户npm adduser --registry http://yourip:4873/
公布
npm publish --registry http://yourip:4873/// 如果你切换到以后源了 间接 npm publish 即可
而后刷新 就能够看到你公布的包了!
更新包:
1. 批改package.json version字段的版本号2. 命令行:npm publish
参考:
https://verdaccio.org/docs/zh...
降级node后还是原来版本的问题
Linux装置telnet
https://www.cnblogs.com/kunmo...