使用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

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

相关推荐
lyj16899716 分钟前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
小白变怪兽2 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头2 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
墨菲安全3 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒
GISer_Jing3 小时前
Monorepo+Pnpm+Turborepo
前端·javascript·ecmascript
天涯学馆3 小时前
前端开发也能用 WebAssembly?这些场景超实用!
前端·javascript·面试
我在北京coding4 小时前
TypeError: Cannot read properties of undefined (reading ‘queryComponents‘)
前端·javascript·vue.js
前端开发与ui设计的老司机4 小时前
UI前端与数字孪生结合实践探索:智慧物流的货物追踪与配送优化
前端·ui
全能打工人4 小时前
前端查询条件加密传输方案(SM2加解密)
前端·sm2前端加密
翻滚吧键盘5 小时前
vue绑定一个返回对象的计算属性
前端·javascript·vue.js