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

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

相关推荐
会周易的程序员3 分钟前
aiDgeScanner架构与实现
c++·ide·物联网·架构·node.js·aiot
前端那点事21 分钟前
Vue3 script setup 语法糖最全教程!零基础吃透+项目落地+面试满分
前端·vue.js
ConardLi25 分钟前
Harness 实践:让 Agent 全自动制作知识讲解视频
前端·人工智能·后端
努力干饭中44 分钟前
Vibe Coding 第二弹:做一个 Canvas K线图
前端·canvas·vibecoding
卷帘依旧1 小时前
Vue 响应式原理:Object.defineProperty vs Proxy 深度对比
前端·vue.js
yqcoder1 小时前
原生 AJAX 揭秘:如何使用 XHR 发起请求
前端·ajax·okhttp
ZC跨境爬虫1 小时前
跟着 MDN 学 HTML day_34:(深入XML 中的 CDATASection 接口)
xml·前端·html·html5·媒体
之歆1 小时前
DAY_20JavaScript 条件语句与循环结构深度学习(二)
前端·javascript
山北雨夜漫步1 小时前
LangGraph
java·前端·算法
漓漾li1 小时前
每日面试题-前端
前端·react.js·面试