最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 从零开始,在linux centeros 7.0搭建verdaccio私有npm库并使用

    正文概述 掘金(前端一条鱼)   2021-02-03   674

    环境配置

    nodejs的下载安装及环境变量配置

    下载:

    wget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz
    

    解压及重命名:

    xz -d node-v12.18.3-linux-x64.tar.xz 
    tar -xf node-v12.18.3-linux-x64.tar
    mv node-v12.18.3-linux-x64 node-v12.18.3
    

    设置node全局环境变量:

    vi .bash_profile  // 修改用户环境变量文件
    

    键入i,进入插入模式:

    export NODE_HOME=/usr/local/node-v12.18.3/bin
    export PATH=$PATH:$NODE_HOME
    

    Esc 退出插入模式,shift+ 后输入wq保存并且退出

    让修改的环境变量文件生效:

    source .bash_profile
    

    至此,一切都很顺利,然而验证一下:

    node -v
    bash: node: 未找到命令...
    

    哈哈,有点尴尬。这不能怪我哈,我严格且标准的按照百度上大佬们提供的步骤进行的。 找原因吧,下载安装应该不会有问题,因为已经生成了我们下载的node包了。 那问题就是出在环境变量的配置上。继续百度,还有一个环境变量的配置方案,系统的全局环境变量配置:

    vi /etc/profile
    // 下面步骤和上面的环境变量配置方法相同
    ......
    

    见证奇迹的时刻到了?

    node -v
    bash: node: 未找到命令...
    

    ???我必须吐槽一波网上的这些大佬们,你们是不是没验证过啊,还是偷偷藏了些私货,没写完整? 继续查资料,过滤掉和以上两种方法一样的文章后,还剩下一篇关于设置软连接的方法。 什么是软连接:可以方便使用的方式。试一下。

    ln -s /root/node-v12.18.3-linux-x64/bin/node /usr/local/bin/node   // ln -s 解压的node地址  软连接的目标地址
    ln -s /root/node-v12.18.3-linux-x64/bin/npm /usr/local/bin/npm 
    
    node -v
    v12.18.3
    npm -v
    6.14.6
    

    OK,node的配置成功,相当于万里长征走了一半,剩下就简单了。

    安装verdaccio

    按照官方文档的使用说明,直接 npm 全局安装 verdaccio 就行。

    npm install -g verdaccio 
    ...安装中...
    ...安装中...
    ...安装中...
    ERROR: grywarn权限问题报错
    

    what?root账号登录,也会权限报错?不讲武德。那就见招拆招:

    npm install -g verdaccio --unsafe-perm
    ...安装中...
    ...安装中...
    ...安装中...
    + verdaccio@4.11.0
    

    成功后,我们修改一下config.yaml配置文件

    vi /root/.config/verdaccio/config.yaml
    

    在配置文件末尾最后添加监听端口:

    listen: 172.xx.xx.xx:4873 // 我们的服务器地址,因为我们是要访问这个地址的嘛
    

    就验证一下,按照官方文档的使用说明,执行:

    verdaccio
    
    bash: verdaccio: 未找到命令...
    

    咦?这么眼熟?和验证nodejs的错误一样。那就好办了,同一个坑,不可能踩两次的:

    ln -s /root/node-v12.18.3-linux-x64/bin/verdaccio /usr/local/bin/verdaccio
    

    再执行:

    verdaccio
    
    *** WARNING: Verdaccio doesn't need superuser privileges. Don't run it under root! ***
     warn --- config file  - /root/.config/verdaccio/config.yaml
     warn --- Verdaccio started
     warn --- Plugin successfully loaded: verdaccio-htpasswd
     warn --- Plugin successfully loaded: verdaccio-audit
     warn --- http address - http://172.xx.xx.xx:4873/ - verdaccio/4.11.0
     fatal--- cannot create server: listen EADDRINUSE: address already in use 172.xx.xx.xx:4873/
    

    端口被占用了?netstat -tunlp 查一下,果然:

    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 172.xx.xx.xx:4873      0.0.0.0:*               LISTEN      7557/hr-ui组件库 
    ...
    

    果断杀掉:kill -9 7557 再执行 verdaccio

    warn --- config file  - /root/.config/verdaccio/config.yaml
     warn --- Verdaccio started
     warn --- Plugin successfully loaded: verdaccio-htpasswd
     warn --- Plugin successfully loaded: verdaccio-audit
     warn --- http address - http://172.xx.xx.xx:4873/ - verdaccio/4.11.0
    

    成功运行。 我们浏览器访问一下,页面报错:无法访问此网站,拒绝了我们的连接请求。外网不能访问? 找下原因,确实,4873这个端口没有对外暴露,所以访问不了。那就暴露一下,执行命令:

    firewall-cmd --zone=public --add-port=4873/tcp --permanent
    success
    
    firewall-cmd --reload      #开放端口需要重启防火墙才能生效
    success
    

    再访问 http://172.xx.xx.xx:4873/,成功进入官方文档说的首页了。

    利用pm2一直守护verdaccio进程

    直接使用 verdaccio 虽然可以正常启动,但是不能一直保持进程开启,所以我们可以使用pm2来对verdaccio进程进行托管启动

    1.安装pm2

    npm install -g pm2 --unsafe-perm
    

    2.软连接pm2

    ln -s /root/node-v12.18.3-linux-x64/bin/pm2 /usr/local/bin/pm2
    

    3.pm2启动verdaccio

    pm2 start verdaccio
    

    好的,至此,这个进程就一直保持开启状态了。

    verdaccio如何使用

    上面所有的步骤都是 verdaccio 服务的相关配置,那该如何使用呢? 简单,客户端执行以下命令:

    //使用时需要手动添加用户
    npm set registry http://172.xx.xx.xx:4873/ //切换到我们的私有库
    npm adduser
    //根据提示输入用户名和密码 邮箱
    
    //由于我们上面已经切换了私有库了就直接登陆
    npm login //按提示登陆
    //在创建好的本地npm项目库文件执行上传
    npm publish
    

    刷新一下 http://172.xx.xx.xx:4873/ 看看,芜湖,成功上传了。

    如何使用私有库的包?

    指定安装的源地址就可以了:

    npm install xxxx  --registry=http://172.xx.xx.xx:4873/
    

    起源地下载网 » 从零开始,在linux centeros 7.0搭建verdaccio私有npm库并使用

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元