nexus 制品库管理

news2024/11/18 11:27:57

目录

一、nexus 介绍

二、nexus 支持的仓库

三、nexus 部署

四、nexus 数据备份

五、创建一个内网yum源

六、创建一个代理yum仓库

七、jenkins 使用 nexus插件

7.1 jenkins 安装插件

7.2 配置 maven 工程

7.3 查看构建和上传


一、nexus 介绍

  1. Nexus 是一个强大的仓库管理工具,用于管理和分发 Maven、npm、Docker 等软件包。它提供了一个集中的存储库,用于存储和管理软件包,并提供了版本控制、访问控制、构建和部署等功能。

  2. Nexus 可以帮助开发团队提高软件包管理的效率和可靠性,减少软件包冲突和版本不一致的问题,并提供了一个安全、可靠的软件包分发渠道。

  3. Nexus 支持多种仓库类型,包括 Maven 仓库、npm 仓库、Docker 仓库等,并且可以与其他工具和系统集成,如 Jenkins、Ansible、Kubernetes 等,以实现自动化的构建、部署和管理。

  4. 总的来说,Nexus 是一个非常有用的工具,可以帮助开发团队更好地管理和分发软件包,提高软件开发的效率和质量。 :::

二、nexus 支持的仓库

仓库名介绍
apt用于存储和管理 Debian 软件包。
bowerWeb 前端包管理器,用于管理 Web 前端资源。
docker用于存储 Docker 镜像。
gitlfs用于存储 Git 大文件。
helm用于存储 Kubernetes Helm charts。
maven2Java 项目构建的仓库。
npmNode.js 软件包管理器。
nuget用于 .NET 平台的软件包管理。
pypiPython 软件包索引。
rR 语言的软件包仓库。
raw一般用于存储任意类型的文件。
rubygemsRuby 的软件包管理器。
yum用于存储 Yum 软件包管理器的仓库。

三、nexus 部署

nexus 官网

安装

[root@localhost ~]# tar -xvf nexus-3.62.0-01-unix.tar.gz -C /opt/
[root@localhost ~]# useradd -r nexus
[root@localhost ~]# chown -R nexus:nexus /opt/nexus-3.62.0-01

启动

[root@localhost ~]# su - nexus      # 切换到 nexus 用户
[root@localhost ~]# cd /opt/nexus-3.62.0-01/bin
[root@localhost ~]# ./nexus run     # 前台启动 Nexus,查看日志
# 也可以通过start后台启动

四、nexus 数据备份

设置=> system[tasks] => create task

image.png

Admin-export 导出数据备份

image.png

image.png

五、创建一个内网yum源

创建一个存储库 Blob(Binary Large Object)是一种二进制大对象,通常用于存储图像、音频、视频等大型文件。Blob Stores 是一种用于存储和管理 Blob 的数据存储服务,通常由云服务提供商提供。

image.png

image.png

创建一个Repositories 仓库

image.png

创建仓库类型为yum Nexus 仓库类型包括 Group、Hosted 和 Proxy。 Group(组仓库):用于组织其他仓库,它本身不存储任何软件包。Group 仓库可以包含其他类型的仓库,例如 Hosted 或 Proxy 仓库,以方便管理和访问。 Hosted(宿主仓库):用于存储自己构建或上传的软件包。Hosted 仓库通常用于内部开发团队共享软件包,或者用于存储私有软件包。 Proxy(代理仓库):用于代理其他公共仓库的软件包。Proxy 仓库可以缓存公共仓库中的软件包,以提高下载速度和节省带宽。Proxy 仓库还可以用于管理和控制对公共仓库的访问。

image.png

image.png

找到仓库并拷贝路径

image.png

测试上传包

# 仓库地址:
http://192.168.75.188:8081/repository/yum/
​
# 如果你想上传本地缓存的包,可以通过下列命令进行上传
# 注意,这里的admin Qq111111 指的是nexus的账号密码,可以根据不同的权限进行创建
[root@localhost ~]# find /var/cache/yum/ -name "*.rpm" -exec curl -v --user 'admin:Qq111111' --upload-file {} http://192.168.75.188:8081/repository/yum/{} \;

验证是否成功上传

image.png

尝试使用仓库

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim nexus-yum.repo
[nexus-yum]
name=nexus-yum
baseurl=http://192.168.75.188:8081/repository/yum
gpgcheck=0
enabled=1

image.png

六、创建一个代理yum仓库

image.png

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim nexus-yum.repo
[nexus-yum]
name=nexus-yum
baseurl=http://192.168.75.188:8081/repository/yum-aliyun/$releasever/os/$basearch/
gpgcheck=0
enabled=1

image.png

这时,我们可以看到,已经将阿里云的软件包进行了代理,并且,当我们进行了下载时

[root@localhost yum.repos.d]# yum install -y mariadb mariadb-server
...
====================================================================================================
 Package                          Arch            Version                  Repository          Size
====================================================================================================
Installing:
 mariadb                          x86_64          1:5.5.68-1.el7           nexus-yum          8.8 M
 mariadb-server                   x86_64          1:5.5.68-1.el7           nexus-yum           11 M
Installing for dependencies:
 perl-Compress-Raw-Bzip2          x86_64          2.061-3.el7              nexus-yum           32 k
 perl-Compress-Raw-Zlib           x86_64          1:2.061-4.el7            nexus-yum           57 k
 perl-DBD-MySQL                   x86_64          4.023-6.el7              nexus-yum          140 k
 perl-DBI                         x86_64          1.627-4.el7              nexus-yum          802 k
 perl-Data-Dumper                 x86_64          2.145-3.el7              nexus-yum           47 k
 perl-IO-Compress                 noarch          2.061-2.el7              nexus-yum          260 k
 perl-Net-Daemon                  noarch          0.48-5.el7               nexus-yum           51 k
 perl-PlRPC                       noarch          0.2020-14.el7            nexus-yum           36 k
​
Transaction Summary
====================================================================================================
Install  2 Packages (+8 Dependent packages)
...
Dependency Installed:
  perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7      perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7     
  perl-DBD-MySQL.x86_64 0:4.023-6.el7               perl-DBI.x86_64 0:1.627-4.el7                   
  perl-Data-Dumper.x86_64 0:2.145-3.el7             perl-IO-Compress.noarch 0:2.061-2.el7           
  perl-Net-Daemon.noarch 0:0.48-5.el7               perl-PlRPC.noarch 0:0.2020-14.el7               
​
Complete!

我们可以看到,包已经缓存了下来

image.png

七、jenkins 使用 nexus插件

jenkins 插件文档 测试仓库 easy-springmvc-maven

7.1 jenkins 安装插件

image.png

7.2 配置 maven 工程

image.png

这里涉及到的groupid version 等信息,可以在项目的pom.xml文件中找到。

image.png

image.png

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>springmvc-maven</groupId>
  <artifactId>easy-springmvc-maven</artifactId>
  <!-- 注意这里的名字中不要带有snapshot -->
  <version>0.0.1</version>
  <packaging>war</packaging>
  <name>springmvc-maven</name>
  <description>simple demo about how to use maven combine spring mvc</description>
  <build>
  <!-- 使用默认的文件路径 -->
   <!-- 生成的war文件名 避免添加版本号 -->
    <finalName>easy-springmvc-maven</finalName>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
        </configuration>
      </plugin>
      <plugin> 
      <artifactId>maven-war-plugin</artifactId> 
        <configuration> 
        <version>3.0 </version> 
        <!-- maven的web项目默认的webroot是在src\main\webapp。如果在此目录下找不到web.xml就抛出webxml attribute is required的异常 -->
        <!-- 需要在pom.xml中增加<webXml>配置 -->
        <!-- <webXml>WebContent\WEB-INF\web.xml</webXml> -->
        </configuration> 
       </plugin>
    </plugins>
  </build>
  <dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>
    
    <!-- spring mvc dependencies start -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- spring mvc dependencies end -->
    <!-- 解决页面访问时发生错误: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config - start -->
    <dependency>
        <groupId>jstl</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>taglibs</groupId>
        <artifactId>standard</artifactId>
        <version>1.1.2</version>
    </dependency>
    <!-- end -->
  </dependencies>
  
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <spring.version>3.1.2.RELEASE</spring.version>
  </properties>
</project>

7.3 查看构建和上传

image.png

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

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

相关文章

【重点文章】将Java程序打包成exe文件,无Java环境也可以运行(解决各种疑难杂症)

文章目录 一、将Java程序打成jar包二、将Jar打成exe三、加壳改造成安装包 编译器为IDEA 一、将Java程序打成jar包 2. 3. 你打的包一般会出现在根目录下面的out文件夹下面  当然你也可以用maven的package功能打包&#xff0c;效果是一样的   二、将Jar打成exe 使用工具e…

AD4209 双路LED、集成充电一体 可做双色温芯片调节 适用于台灯、手电筒

AD4209 是一款双路输出的可调色温的 台灯控制芯片&#xff0c;集成了锂电池充电管理模块、 LED 功能控制模块和保护模块&#xff0c;关机待机电流仅 3uA。 AD4209 为双路输出控制&#xff0c;每一路最大输出 电 流 为 1.2A 开 关 模 式 &#xff1a;CH1→CH2→CH1CH2→OFF。…

Qt MVC示例 simpletreemodel 树模型

Qt MVC示例 simpletreemodel 树模型 从文本中读取树模型数据&#xff0c;缩进代表子项 TreeItem 表示一行字符串数据 treeitem.h #ifndef TREEITEM_H #define TREEITEM_H#include <QList> #include <QVariant>//! [0] class TreeItem { public:explicit Tree…

EasyRecovery2024免费强大的电脑文件恢复软件

文件的保存一直是我们对电子化数据较为关注的一个环节&#xff0c;毕竟这是一份文件或数据的根本所在。但是在计算机操作中难免会出现有文件丢失或文件误删的现象&#xff0c;给我们的日常和工作带来不必要的困扰。 今天小编就要和大家分享一款功能超级强大的文件恢复软件&…

DCGAN 使用指南:将卷积神经网络和对抗网络结合,适用于生成小尺寸的图像

DCGAN 使用指南&#xff1a;将卷积神经网络和对抗网络结合 网络结构细节设计 论文地址&#xff1a;https://arxiv.org/abs/1511.06434 项目代码&#xff1a;https://github.com/tensorlayer/DCGAN.git DCGAN 适用于生成小尺寸的图像&#xff0c;并且具有简单易用的优势 Styl…

使用 Webshell 访问 SQL Server 主机并利用 SSRS

本文将指导您使用RDS SQL Server实例的主机账号登录和管理SQL Server Reporting Services&#xff08;SSRS&#xff09;数据库。 背景信息 RDS SQL Server提供Webshell功能&#xff0c;用户可以通过Web界面登录RDS SQL Server实例的操作系统。通过Webshell&#xff0c;用户可…

中国毫米波雷达产业分析3——毫米波雷达市场分析(1~3)

一、总体市场 &#xff08;一&#xff09;总规模 近几年&#xff0c;得益于汽车智能化的高速发展与雷达芯片制作工艺的进步&#xff0c;国内毫米波雷达整体市场增速较快。根据初步测算&#xff0c;2022年中国毫米波雷达市场总规模达到86亿元&#xff0c;实现同比增长24.6%。 图…

加密挖矿、AI发展刺激算力需求激增!去中心化算力时代已来临!

2009年1月3日&#xff0c;中本聪在芬兰赫尔辛基的一个小型服务器上挖出了比特币的创世区块&#xff0c;并获得了50BTC的出块奖励。自加密货币诞生第一天起&#xff0c;算力一直在行业扮演非常重要的角色。行业对算力的真实需求&#xff0c;也极大推动了芯片厂商的发展&#xff…

安装vmware_esxi 超详细

安装vmware_esxi 超详细 </h2><div id"cnblogs_post_body" class"blogpost-body blogpost-body-html">esxi安装手册 1、esxi介绍 ESXI原生架构模式的虚拟化技术&#xff0c;是不需要宿主操作系统的&#xff0c;它自己本身就是操作系统。因此…

Maven 进阶学习指南---setting详解

前言 当我们在开发项目时&#xff0c;有时需要用到外部依赖组件&#xff0c;例如当我们需要 Json 序列化的时候需要用到 FastJson 组件&#xff0c;我们可以通过下载对应 jar 包加载到项目中。但当一个大的项目同时需要依赖各种各样的外部服务&#xff0c;就存在着配置繁琐、依…

Ubuntu22.04 server版本关闭DHCP,手动设置ip

在Ubuntu 22.04 中&#xff0c;网络配置已迁移到 Netplan&#xff0c;因此可以使用 Netplan 配置文件来手动设置 IP 地址并关闭 DHCP。 以下是在 Ubuntu 22.04 上手动设置 IP 地址并禁用 DHCP 的步骤&#xff1a; 打开终端&#xff0c;使用 root 权限或 sudo 执行以下命令&…

004:Direct 2D离屏渲染(Qt中实现)

简介&#xff1a; 用QT开发图像显示的小程序&#xff0c;需要一些标注工具&#xff0c;由于用的是opengl渲染&#xff0c;所以就在内存中进行绘制&#xff0c;然后纹理贴图贴出去&#xff0c;发现Qt绘制的效果太差&#xff0c;且速度一般&#xff0c;于是就想着用direct2d来绘制…

48、Flink DataStream API 编程指南(3)- 完整版

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

【element-plus使用】el-select自定义样式、下拉框选项过长等问题解决

1、自定义样式 <template><el-select v-model"value" style"width: 150px"><el-option label"选项一" value"option1"></el-option><el-option label"选项二" value"option2"><…

C++ 抽象类和接口 详解

目录 0 引言1 抽象类2 接口2.1 Java与C接口的区别 &#x1f64b;‍♂️ 作者&#xff1a;海码007&#x1f4dc; 专栏&#xff1a;C专栏&#x1f4a5; 标题&#xff1a;C 抽象类和接口 详解❣️ 寄语&#xff1a;书到用时方恨少&#xff0c;事非经过不知难&#xff01;&#x1f…

springboot整合easy-es实现数据的增删改查

背景 目前公司的一个老项目&#xff0c;查询贼慢&#xff0c;需要想办法提升一下速度&#xff0c;于是就想到了ES&#xff0c;现在尝试一下将ES整合到项目中来提升检索效率。 ES是基于倒排索引实现的&#xff0c;倒排索引中一个表相当于一个索引&#xff0c;表中的每条记录都…

yolov1网络结构说明

文章目录 一. 网络结构二. 网络说明1. 网络的输入2. 网络的输出(1) 5 5表示:每个网格使用两个先验框进行预测。(2) “5”表示&#xff1a;每个先验框包含的预测信息的数量。(3) 20表示&#xff1a;20个分类预测值(4) 每个网格能预测几个目标&#xff1f; 一. 网络结构 论文下…

海外储能认证标准

北美认证 UL9540 代表一个封装完整的储能系统功能安全认证&#xff0c;关注机械测试&#xff0c;电器测试和环境测试 UL9540A 关注消防本身&#xff0c;UL9540A测试主要从电池储能系统安装参数&#xff0c;安装通风要求&#xff0c;消防设施&#xff0c;消防策略和应对措施…

一个小学数学题

如下面动图所示&#xff0c;问阴影部分的面积是不是不变的&#xff1f; 求解&#xff1a; 当弦BC和DE平行时&#xff0c;扇区 A B ⌢ \overset{\LARGE{\frown}}{AB} AB⌢不变&#xff0c;BC到DE的距离始终保持不变&#xff0c;假设两条线段之间的距离为H, 由三角形的面积公式&…

TZOJ 1370 数值统计

答案&#xff1a; #include <stdio.h> int main() {int n0,i0;int fcount 0; //负数计数器int zcount 0; //整数计数器int pcount 0; //小数计数器while (scanf("%d", &n) 1 && n ! 0) //多组输入&#xff0c;并且不为0{double…