nexus2架设npm私服

3

最近因为工作需要,在公司需要架设npm私服,满足团队组件化开发需求。公司已经架设了nexus2,然而找遍了百度,都是用nexus 3来架设npm私服,而没有一篇文章是介绍nexus 2的,遂有了这篇文章。

创建各个仓库

创建proxy仓库

proxy仓库的目的是对npm源进行代理,npm包经过代理之后,只要下载一次,以后就可以在nuxus使用,大大增加下载速度。

1、选择菜单Respositories->Add->Proxy respository
Proxy respository

2、填写属性

填写属性

分别填写

当然(4)这个地方在国内可以填写https://registry.npm.taobao.org

创建私有npm仓库

私有npm仓库的目的是可以上传npm包到私服。

1、选择菜单Respositories->Add->Hosted respository
Hosted respository

2、填写属性

写属性

分别填写

  • (1) npm-internal
  • (2) npm-internal
  • (3) npm

创建仓库组

仓库组的目的是组合上面创建的仓库。

1、选择菜单Respositories->Add->Respository Group
clipboard.png

2、填写属性

clipboard.png

分别填写

  • (1) npm-all
  • (2) npm-all
  • (3) npm
  • (4) 全选并点击中间的箭头加入到左边的列表

最后结果

clipboard.png

修改配置

修改.npmrc

1、修改系统用户目录的.npmrc文件

registry=http://192.168.1.238:8089/nexus/content/groups/npm-all/

注意替换成自己的nuxus地址

2、测试有没有生效

创建一个测试的npm项目

cd ~
mkdir npmtest
cd npmtest
npm init

一路回车

npm install vuex

成功的话应该看到刚才的npm-all这个仓库下多了vuex这个包

clipboard.png

到这里,能下载的私服架设完毕,那么还需要配置上传。

修改上传配置

把这段代码直接粘贴到.npmrc文件中

init.author.name = Jane Doe
init.author.email = jane@example.com
init.author.url = http://blog.example.com
# an email is required to publish npm packages
email=jane@example.com
always-auth=true
_auth=YWRtaW46YWRtaW4xMjM=

试一下刚才包发布:

npm publish --registry http://192.168.1.238:8089/nexus/content/repositories/npm-internal/

注意改成自己的url

clipboard.png

没有出现异常表示发布成功

查看npm-internal发布仓库:
clipboard.png

发现已经上传了

clipboard.png

同时在仓库组也可以发现这个包,说明可以使用。

至此,nexus2的npm私服架设完毕。

你可能感兴趣的

pennliang · 2018年11月13日

请问楼主,你点击浏览器中 vuex这个目录能看到目录下的内容不?我单击依赖包显示404 没有内容

回复

pennliang · 2018年11月13日

我单击浏览器的vuex显示这个:404 - No content for path /vuex/ No content for path /vuex/,但是我在nexus服务上的目录下能看到vuex下有文件

回复

0

目前已经放弃nexus2,改用nexus3,nexus2发现有些很奇怪的问题,解决不了。

jzoom 作者 · 2018年11月20日
jzoom 作者 · 2018年11月20日

目前已经放弃nexus2,改用nexus3,nexus2发现有些很奇怪的问题,解决不了。

回复

载入中...