使用nexus3搭建npm私有仓库

一、下载解压安装包

下载地址:nexus-3.66.0-02-win.zip

二、安装并运行私服

cmd中进入到文件夹中的bin目录下运行一下命令

bash 复制代码
nexus.exe /run

等几分钟启动后,浏览器访问:默认端口8081

bash 复制代码
http://127.0.0.1:8081/
#修改端口在etc文件下 nexus-default.properties 修改端口

如图:

在登录页面输入用户名和 密码(默认用户名为 admin,默认密码则保存在 /sonatype-work/nexus3 目录下的 admin.password 文件中)

三、配置npm私服

与其他私服一样的,npm 私服同样有三种类型:

hosted : 本地存储,即同 docker 官方仓库一样提供本地私服功能
proxy : 提供代理其他仓库的类型,如果本地不存在某些jar文件时就会到这些代理站点去下载
group : 组类型,实质作用是组合多个仓库为一个地址

1、创建 blob 存储。

为其(npm私库)创建一个单独的存储空间。

2、创建 hosted 类型的 npm。

Name: 定义一个名称 kuki-npm

Storage:Blob store,我们下拉选择前面创建好的专用 blob:kuki-hub

Hosted:开发环境,我们运行重复发布,因此 Delpoyment policy 选择 Allow redeploy

3、创建一个 proxy 类型的 npm 仓库。

Name: proxy-npm

Proxy:Remote Storage: 远程仓库地址,这里填写: https://registry.npmjs.org

Storage: kuki-hub

其他的均是默认。

4、创建一个 group 类型的 npm 仓库。

Name:group-npm

Storage:选择专用的 blob 存储 kuki-hub

group : 将左边可选的 2 个仓库,添加到右边的 members 下。

这些配置完成之后,就可以使用了。

查看私服对外地址

5、验证使用

通过npm命令配置

bash 复制代码
npm config set registry http://192.168.137.1:8081/repository/group-npm/
npm config get registry

通过 nrm 配置

bash 复制代码
nrm add kukipull http://192.168.137.1:8081/repository/group-npm/
nrm use kukipull
nrm ls

开始安装,安装之前先看一下组里的内容:

空白的

安装编译

bash 复制代码
#在一个新项目中
npm install 
#或
yarn
#或直接脚手架创建新项目
npx react-native@latest init AwesomeProject

在编译的过程中,已经可以看看组里的变化了:

当再次重新建一个新项目时,因为第一次已经将依赖从远程缓存到本地私服,那么在第二次安装编译的时候,就会快很多。

当运行前端项目的时候,会在解决依赖的时候会加上一个参数

bash 复制代码
npm install --registry=https://registry.npm.taobao.org

将源指定为淘宝的源,以让速度加快起来,事实上这种的确能够让速度变快,但是长久来看,如果想真正的快速、便携、敏捷开发部署,更好的是搭建企业内部的私服。

相关推荐
牧羊狼的狼2 小时前
React 中的 HOC 和 Hooks
前端·javascript·react.js·hooks·高阶组件·hoc
知识分享小能手3 小时前
React学习教程,从入门到精通, React 属性(Props)语法知识点与案例详解(14)
前端·javascript·vue.js·学习·react.js·vue·react
魔云连洲3 小时前
深入解析:Vue与React的异步批处理更新机制
前端·vue.js·react.js
mCell4 小时前
JavaScript 的多线程能力:Worker
前端·javascript·浏览器
超级无敌攻城狮5 小时前
3 分钟学会!波浪文字动画超详细教程,从 0 到 1 实现「思考中 / 加载中」高级效果
前端
excel6 小时前
用 TensorFlow.js Node 实现猫图像识别(教学版逐步分解)
前端
gnip6 小时前
JavaScript事件流
前端·javascript
赵得C6 小时前
【前端技巧】Element Table 列标题如何优雅添加 Tooltip 提示?
前端·elementui·vue·table组件
wow_DG7 小时前
【Vue2 ✨】Vue2 入门之旅 · 进阶篇(一):响应式原理
前端·javascript·vue.js
weixin_456904277 小时前
UserManagement.vue和Profile.vue详细解释
前端·javascript·vue.js