[nexus]基于nexus搭建npm仓库及上传插件到仓库

news2024/10/7 3:17:42

目录

  • 环境信息
  • 搭建npm仓库
    • 创建存储位置
    • 创建proxy仓库
    • 创建hosted仓库
    • 创建group仓库
    • 配置域
  • 下载及上传
    • 登录
    • 下载
    • 上传

环境信息

  • nexus: 3.29.2-02
  • node: v14.18.2
  • npm: 6.14.15

搭建npm仓库

创建存储位置

这一步不是必须的,可以跟之前创建的复用

依次打开 [设置] -> [ Blob Stores] -> [Create blob store] 填入name并确认 [Create blob store](path默认会自动填充,可根据需要进行修改)
在这里插入图片描述

创建proxy仓库

依次打开 [设置] -> [ Repositories] -> [Create repository] -> 选择 [npm(proxy)]类型 打开新增页面, 填入name、url并选择**[blob store](可以选择上一步中创建的) ,点击[Create repository]** 确认即可
在这里插入图片描述

创建hosted仓库

依次打开 [设置] -> [ Repositories] -> [Create repository] -> 选择 [npm(hosted)]类型 打开新增页面, 填入name、选择**[blob store](可以选择上上一步中创建的存储位置) ,点击[Create repository]** 确认即可

在这里插入图片描述

创建group仓库

依次打开 [设置] -> [ Repositories] -> [Create repository] -> 选择 [npm(group)]类型 打开新增页面, 填入name、选择 [blob store] (可以选择上上上一步中创建的存储位置) ,从可用列表中选中上一步添加的proxy\hosted类型的仓库,并点击 [>] 添加到右侧,然后点击 [Create repository] 确认即可
在这里插入图片描述

配置域

这一步配置主要为了在使用时认证使用,如不配置将报如下错误

npm ERR! code E401
npm ERR! Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\**\AppData\Roaming\npm-cache\_logs\2023-06-27T14_30_31_628Z-debug.log

依次打开 [设置] -> [ Security] -> [Realms ],从可用列表中选中 [npm Bearer Token Realm] ,并点击 [>] 添加到右侧,然后点击 [Save] 确认即可
在这里插入图片描述

下载及上传

登录

如允许了匿名访问可忽略
使用如下依次设置私服地址及登录

#设置私服地址 (私服地址可从仓库列表中获得)
npm config set registry http://192.168.1.11:8081/repository/npm-public/
#登录私服
npm login --registry http://192.168.1.11:8081/repository/npm-public/

获取私服地址
在这里插入图片描述
登录过程
在这里插入图片描述

下载

以 安装verdaccio为例
执行如下命令

# 安装插件
npm install verdaccio --save

安装过程
在这里插入图片描述
安装完毕后public 仓库内容发生变化
在这里插入图片描述

上传

以shellsubstitute插件源码为例
shellsubstitute源码下载地址: https://github.com/featurist/shellsubstitute/archive/refs/heads/master.zip
下载依赖包时使用的group类型的仓库,按其内顺序依次查找,当上传时须上传到hosted类型仓库,虽然两个仓库ip、端口一致,但仍需要进行登录操作

依次执行如下命令

#git拉取代码(直接下载包也行)
git clone  https://gh.api.99988866.xyz/https://github.com/featurist/shellsubstitute.git
#版本迭代
npm version patch
# 登录到hosted类型的仓库
npm login --registry http://192.168.1.11:8081/repository/npm-local/
# 发布到hosted类型的仓库
npm publish --registry http://192.168.1.11:8081/repository/npm-local/
# 

上传效果
在这里插入图片描述
上传后hosted仓库
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/706035.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Docker】Docker的简介安装以及使用Docker安装Mysql案例

Docker docker概述 Docker是一个开源的应用容器引擎诞生于2013年初,基于Go语言实现,dotClou公司出品(后改名为Docker inc)Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可以直接的容器中,然后发布到任何…

测试的流程

目录: 测试流程价值与体系测试计划业务架构分析思路bug基本概念bug处理流程测试流程管理jira系统-测试用例管理测试流程管理 jira 系统-Bug管理测试总结业务架构分析工具plantuml测试流程管理jira系统-测试流程定制测试流程管理 jira 系统-Bug管理流程定制 1.测试…

HTML5新特性总结

新增语义化标签 新增了很多语义化标签,如header、footer、nav、article、section(页面中的某段文字,或文章中的某段文字)、aside、main 其中article标签里可以包含多个section; section强调的是分段或分块,若想将一块内容分成几…

ARM学习(23)AMP和SMP的认识与理解

笔者来聊聊AMP和SMP架构理解(多核下系统)。 简介介绍 笔者经常听到ARM架构时,谈到SMP的架构或者AMP的架构,今天特意来了解一下, SMP:Symmetric multiprocessing,对称多处理器AMP:A…

leetcode:2154. 将找到的值乘以 2(python3解法)

难度:简单 给你一个整数数组 nums ,另给你一个整数 original ,这是需要在 nums 中搜索的第一个数字。 接下来,你需要按下述步骤操作: 如果在 nums 中找到 original ,将 original 乘以 2 ,得到新…

LangChain大型语言模型(LLM)应用开发(二):Conversation Memory

LangChain是一个基于大语言模型(如ChatGPT)用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

Java9集合类新增功能

前言 Java8及Java9在集合Collection类中新增了一些很好用的新方法&#xff0c;能方便程序员更便捷的处理集合数据&#xff0c;本文对其中的一些方法进行总结 一. List 1.创建 // 传统方法List<String> list1 new ArrayList<>();list1.add("item1");li…

论文导读 | Operation ResearchManagement Science近期文章精选

推文作者&#xff1a;周梓渊 编者按 本期我们选取了最近来自Operation Research和Management Science的六篇文章以飨读者&#xff0c;前四篇文章来自OR&#xff0c;最后两篇文章来自MS&#xff1b;内容涉及多个方面&#xff0c;实现了方法论与具体应用实践的结合&#xff0c;例…

Node.js HTTP 模块的内存泄露问题

很久没有逛社区了&#xff0c;晚上回来看了一下最近的情况&#xff0c;突然看到一个内存泄露问题&#xff0c;作为一个 APM 开发者&#xff0c;自然想分析其中的原因。 问题 下面介绍一下具体的问题。看一下 demo。 const http require(http)async function main () {let i…

用NumPy,梯度下降的方法来解决线性回归

import matplotlib.pyplot as plt import numpy as npdef reckonCost(X,y,theta):my.shape[0]innernp.power( ( (Xtheta)-y.T ) , 2)return np.sum(inner) / (2*m)# 定义梯度下降函数 def gradient_descent(X, y, theta, alpha, num_iters):# m len(y) # 样本数量my.shape[0]…

Leetcode-每日一题【86.分隔链表】

题目 给你一个链表的头节点 head 和一个特定值 x &#xff0c;请你对链表进行分隔&#xff0c;使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 示例 1&#xff1a; 输入&#xff1a;head [1,4,3,2,5,2], x 3输…

【数据挖掘】时间序列教程【三】

2.7 平稳性 序列的平稳性 是一个关键属性&#xff0c;它允许我们应用许多时间序列分析的标准工具。 如果对于大小 n 和任何整数 ,观察发现 具有与 相同的联合分布&#xff0c;则时间序列是严格平稳的。 换句话说&#xff0c;从分布的角度来看&#xff0c;平稳时间序列对移位…

【嵌入式Qt开发入门】初识信号与槽

信号与槽&#xff08;Signal & Slot&#xff09;是 Qt 编程的基础&#xff0c;也是 Qt 的一大创新。因为有了信号与槽的编程机制&#xff0c;在 Qt 中处理界面各个组件的交互操作时变得更加直观和简单。 信号&#xff08;Signal&#xff09;就是在特定情况下被发射的事件&a…

【Linux】C++项目实战-高并发服务器详析

目录 多进程实现并发服务器多线程实现并发服务器BIO模型NIO模型I/O多路复用(I/O多路转接)select主旨思想图解原理函数解析代码举例select的缺点 poll函数解析代码示例 epoll&#xff08;最重要&#xff0c;请重点掌握&#xff09;函数解析代码举例epoll的两种工作模式 橙色 多…

GO语言使用最简单的UI方案govcl

接触go语言有一两年时间了。 之前用Qt和C#写过桌面程序&#xff0c;C#会被别人扒皮&#xff0c;极度不爽&#xff1b;Qt默认要带一堆dll&#xff0c;或者静态编译要自己弄或者找库&#xff0c;有的库还缺这缺那&#xff0c;很难编译成功。 如果C# winform可以编译成二进制原生…

Android 应用层 到 HAL 层

Android 应用层 到 HAL 层 1、相关知识点1.1 概要1.2 参考 2、拿SensorService举例2.1 Android Apps > Android Framework阶段2.2 Android Framework内部阶段2.2.1 frameworks/base2.2.2 frameworks/native 2.3 Android Framework > HAL 阶段2.3.1 旧版 HAL 1、相关知识点…

前段搜索框不请求接口隐藏数据

项目介绍&#xff1a;uview-ui 1.x的&#xff0c;并且使用语言切换功能&#xff08;i18n&#xff0c;hbuilder新建项目选择i18n项目&#xff09;&#xff0c;因为是h5项目&#xff0c;所以使用location.reload()进行刷新 效果图&#xff1a; 主要判断在 v-if“!keyword || i…

Git 之 reset --hard 回退/回滚到之前的版本代码后,后悔了,如何在恢复之后的版本的方法简单整理

Git 之 reset --hard 回退/回滚到之前的版本代码后&#xff0c;后悔了&#xff0c;如何在恢复之后的版本的方法简单整理 目录 Git 之 reset --hard 回退/回滚到之前的版本代码后&#xff0c;后悔了&#xff0c;如何在恢复之后的版本的方法简单整理 一、简单介绍 二、操作步骤…

Redis是什么?(详细安装步骤)

一、Redis简介&#x1f349; 背景 在Web应用发展的初期&#xff0c;那时关系型数据库受到了较为广泛的关注和应用&#xff0c;原因是因为那时候Web站点基本上访问和并发不高、交互也较少。而在后来&#xff0c;随着访问量的提升&#xff0c;使用关系型数据库的Web站点多多少少…

代码随想录二刷 day38 | 动态规划之 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯

day38 509. 斐波那契数1 确定dp数组以及下标的含义2 确定递推公式3 dp数组如何初始化4 确定遍历顺序5 举例推导dp数组 70. 爬楼梯1 确定dp数组以及下标的含义2 确定递推公式3 dp数组如何初始化4 确定遍历顺序5 举例推导dp数组 746. 使用最小花费爬楼梯1 确定dp数组以及下标的含…