0


批量上传npm依赖的tgz包至nexus私库中

一、背景:

因公司网络要求,研发人员开发的代码再进行构建时需要使用到互联网的一些包,但是这些包每次构建的时候都需要从外网下载下来,比较耗时,同时因为护网安全等规范要求,所以在公司内部部署一套nexus私库用于存放maven编译和nodejs编译所需的一些包。

二、安装nodejs环境:

因为这次上传时通过npm publish的方式上传的,所以是需要部署一个nodejs环境。

安装gcc依赖环境:

  1. [root@localhost ~]# yum install gcc gcc-c++

安装nodejs服务:

  1. [root@localhost ~]# yum install -y nodejs

注:这里是不需要启动nodejs服务的,直接去验证nodejs环境即可。

  1. [root@localhost ~]# node -v
  2. v8.9.4
  3. [root@localhost ~]# npm -v
  4. 5.6.0

注:到这里就完成了nodejs环境的部署工作了。

三、验证上传tgz包到nexus私库:

设置nexus私库地址:

  1. [root@localhost ~]# npm config set registry http://192.168.6.181:8989/repository/jh-prod-hosted/

注:这里需要注意一下这个nexus地址是能上传tgz包到地址,并且这个私库的format是npm的,切记,切记。

登入到nexus私库上:

  1. [root@localhost ~]# npm adduser -registry http://192.168.6.181:8989/repository/jh-prod-hosted/
  2. Username: admin
  3. Password:
  4. Email: (this IS public) changeme@yourcompany.com
  5. Logged in as admin on http://192.168.6.181:8989/repository/jh-prod-hosted/.

测试上传单个tgz包:

有两种方式上传tgz包

方式一:

  1. [root@localhost ~]# npm publish -registry http://192.168.6.181:8989/repository/jh-prod-hosted/ functional-red-black-tree-1.0.1.tgz
  2. + functional-red-black-tree@1.0.1

方式二:

  1. [root@localhost ~]# npm publish functional-red-black-tree-1.0.1.tgz
  2. + functional-red-black-tree@1.0.1

两种方式都可以,根据个人习惯选择,建议选择方式二的方式操作。

四、批量上传tgz包至nexus私库:

批量的方式,就是find符合要求的tgz包,然后通过npm publist方式上传。

命令如下:

  1. find . -type f -name "*.tgz" | sed "s|^\./||" | xargs -I '{}' npm publish {} 2>&1 | tee -a npm.log

实际自行效果如下:

  1. [root@localhost npm-old]# find . -type f -name "*.tgz" | sed "s|^\./||" | xargs -I '{}' npm publish {} 2>&1 | tee -a npm.log
  2. + @ant-design/colors@3.2.2
  3. + @ant-design/icons-vue@2.0.0
  4. + @ant-design/icons@2.1.1
  5. + @antv/adjust@0.1.1
  6. + @antv/attr@0.1.2
  7. + @antv/component@0.3.10
  8. + @antv/coord@0.1.0
  9. + @antv/g@3.3.6
  10. + @antv/g@3.4.10
  11. ........

最后上传完成之后去nexus私库里查看即可。

到此就可以使用nexus私库里的npm的tgz包里。

标签: npm 前端 node.js

本文转载自: https://blog.csdn.net/jiang0615csdn/article/details/140795924
版权归原作者 jiang0615csdn 所有, 如有侵权,请联系我们删除。

“批量上传npm依赖的tgz包至nexus私库中”的评论:

还没有评论