Linux 部署 Nexus (下载、安装、使用)

news2025/4/7 5:13:55

----仅供学习 如有侵权 联系删除-----

1、下载
下载方式1:官网下载

//建议用迅雷
https://help.sonatype.com/repomanager3/product-information/download/download-archives—repository-manager-3

下载方式2:百度云盘下载

文件名:nexus-3.25.1-04-unix.tar.gz

版本号:3.25.1-04

文件大小:156M左右

百度云链接:https://pan.baidu.com/s/1KzzpfA67En_nb59KQ7efEw 

提取码:0000

2、部署
解压

tar xvf nexus-3.43.0-01-unix.tar.gz 

解压出两个文件夹:nexus-3.25.1-04 和 sonatype-work 。

 nexus-3.25.1-04:用于实现 nexus 功能

 sonatype-work:用于存储数据

启动:

[root@hadoop08 bin]# pwd
/home/software/nexus/bin
[root@hadoop08 bin]# ./nexus start

脚本文件启动方式简介

start 是后台启动,日志以文件形式保存;

run 是当前进程启动,直接打印在控制台;

拓展:
1、其他常用命令还有:


stop 是停止服务;

restart 是重启服务;

status 是查看服务状态

2、Nexus 服务的默认端口是 8081 。

    默认端口是 8081,如果要修改,可以在 sonatype-work/nexus3/etc 目录下的 nexus.properties 配置文件,将 application-port 配置成你要的端口号即可:

启动方式(2种):
2.1 start命令启动(后台进程形式)

    在 /home/thp/public/nexus/nexus-3.25.1-04/bin 目录下,执行脚本命令,以后台进程的形式(不占用当前命令终端窗口),启动 Nexus 服务:
./nexus start
 启动需要等待一段时间,可用浏览器访问 linux 服务器ip:8081 来验证服务是否启动好。

2.2 run命令启动(当前进程形式)

    在 /home/thp/public/nexus/nexus-3.25.1-04/bin 目录下,执行脚本命令,以当前进程形式(会占用当前命令终端窗口),启动 Nexus 服务: 
./nexus run

总结:
为了不占用当前命令终端窗口,推荐使用 2.1 start命令启动(后台进程形式)Nexus 服务。

开放端口:(我这里是关闭了防火墙,不建议这样)
最后一步,也是非常重要的一步,就是开放 linux 系统的防火墙端口,这里我使用了 Nexus 服务的 默认端口 8081,所以开放的就是 8081 端口:

    先查看所有开放的端口号(首次执行该操作需要输入当前用户密码):
    sudo firewall-cmd --zone=public --list-ports

开放 8081 端口:

sudo firewall-cmd --zone=public --add-port=8081/tcp --permanent
再次查看所有开放的端口号,可以看到 8081 端口已经开放了:

验证 Nexus服务:
验证方式有很多种:

    1、linux 系统命令终端 查看 8081 端口所占用的进程:
netstat -tunlp | grep 8081

2、linux 系统命令终端 查看 带 nexus 关键字的进程信息:

 ps -ef|grep nexus

3、(强烈推荐)在浏览器访问 Nexus 的 Web 端首页,输入 linux 服务器ip:8081:
在这里插入图片描述
出现类似以上3种信息,则说明 Nexus 服务已经启动成功了!!!

3、登录并初始化 Nexus
浏览器访问 Nexus 的 Web 端首页,并登录,输入账号、密码:

注意:

有些 Nexus 的版本中,是有默认配置的账号(admin)、密码(admin123)的,如果登录失败的话,
可以在 sonatype-work/nexus3 目录下 的 admin.password 文件中查看初始化密码。

在 linux 系统命令终端中执行:

# 进入 admin.password 文件所在目录
cd /home/thp/public/nexus/sonatype-work/nexus3
 
# 查看 admin.password 文件文本内容
cat admin.password
或
vi admin.password
或
vim admin.password
  文件文本内容的第一行就是密码:

首次登录需要重置密码
在这里插入图片描述
点击 Next 后,配置匿名访问:
在这里插入图片描述配置完成:
在这里插入图片描述4、使用
创建仓库:
在这里插入图片描述
选择 maven2(hosted):

在这里插入图片描述输入
在这里插入图片描述
在这里插入图片描述
创建成功:

在这里插入图片描述
点击后能看见详情,url 就是新仓库的ip地址:
在这里插入图片描述
创建角色并权限配置( 不建议分配删除权限):
依次点击 Repository 仓库管理图标(齿轮)、 Roles、Create role、Nexus role:
在这里插入图片描述
填写角色信息,检索 关键字:

nx-repository-admin-maven2-

赋予仓库的权限,这里我把maven2下 central、public、release、snapshots 库的非删除权限(如:browse、edit、read权限),都赋予给 新建的角色,另外把 新建的 私库的 * 权限(所有权限)也赋予给该角色:
在这里插入图片描述检索 自定义仓库的库名,赋予权限 nx-repository-view-maven2-自定义库名-*:

注意:

    这些权限一定要配置完整,否则很容易导致各种问题(比如:maven项目上传依赖失败等)

在这里插入图片描述
点解 Create role 创建角色:
在这里插入图片描述 创建成功:
在这里插入图片描述 创建用户:
在这里插入图片描述 点击 Create local user 创建用户:
在这里插入图片描述

验证用户:
点击右上角 Sign out ,退出 admin 账号的登录状态,并使用 刚刚创建的自定义用户登录试试:

拓展:
可以看到虽然登录成功了,但权限比较少:
在这里插入图片描述
在首页中,可以 看到这个用户并没有 Search、Browse 和 Upload 选项:

在这里插入图片描述
解决:

    重新用 admin 账号登录后,找到我们之前创建的角色,并分别检索 search、browse、upload 关键字,把 nx-search-read、nx-repository-view-*-*.browse、nx-comopnet-upload 权限赋予给该角色:

在这里插入图片描述
上传依赖包:
1、手动上传
依次点击首页图标(箱子) 、Upload、最定义的私库:

在这里插入图片描述选择文件并填写相关信息,点击Upolad:

在这里插入图片描述出现如下报错:
在这里插入图片描述
这是因为上传的jar包,不符合自定义仓库的 MIME 类型格式。

解决:

    回到仓库管理中,选择自定义仓库,并找到 Storage 下 的 Strict Content Type Validation:

把打勾的选项(Validate that all content uploaded to this repository is of a MIME type appropriate for the repository format)去掉。
在这里插入图片描述

保存配置:

在这里插入图片描述

再次上传,出现如下信息则为上传成功:

查看已上传的 jar 文件:
点击 上一图片中的 view it now ,或者直接点击左边导航栏中的 Search ,可以看见 jar 包已经手动上传成功:
在这里插入图片描述
2、自动上传:
主要是指在使用maven项目进行打包操作时,可以配置自定义的nexus仓库ip地址,并上传到该仓库中去,具体步骤如下:

1.修改 maven 的 settings.xml 配置文件:

    如:IDEA中,点击左上角的 File - Settings ,检索 maven 关键字,可以看到自己当前项目所引用的 maven 配置:

找到 maven 的 settings.xml 配置文件,

添加以下代码到 servers标签中:

<server> 
	<id>自定义的Nexus仓库名(如:xxx-nexus)</id> 
	<username>自定义用户的账号(如:xxx)</username> 
	<password>自定义用户的密码(如:xxx)</password> 
</server> 

在这里插入图片描述
保存并关闭settings.xml文件。

  1. 项目上传 .jar 依赖包 到自定义的Nexus仓库 xxx-nexus :
    找到需要上传.jar包的模块中的pom文件(项目全部jar包都要上传,则可以在项目最外层的pom.xml)中加入以下代码到 project 标签下:
    <!--远程仓库地址-->
    <distributionManagement>
        <repository>
            <id>xxx-nexus</id>
            <name>Xxx Nexus3 Repository</name>
            <url>http://自定义仓库ip:8081/repository/xxx-nexus/</url>
        </repository>
    </distributionManagement>

在这里插入图片描述

打开 IDEA 的 右侧的 Maven Projects 窗口,依次点击 左上角的 reimport图标、LifeCycle 下的 deploy:

在这里插入图片描述
上传成功:

http://hadoop08:8081/

admin
admin

user_role_gaoyongjie
admin

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

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

相关文章

一个让阿里面试官都说好软件测试简历模板

作为软件测试的垂直领域深耕者&#xff0c;面试或者被面试都是常有的事&#xff0c;可是不管是啥&#xff0c;总和简历有着理不清的关系&#xff0c;面试官要通过简历了解面试者的基本信息、过往经历等&#xff0c;面试者希望通过简历把自己最好的一面体现给面试官&#xff0c;…

数据库表设计规范—三范式、反范式

1.第一范式&#xff1a; 表中的属性不可分割 改为&#xff1a; 2.第二范式&#xff1a; 非主属性必须完全依赖主属性&#xff0c;不能部分依赖&#xff0c;比如只依赖联合主键中的其中一个主键就能拿到数据&#xff0c;这是不符合第二范式的 3.第三范式&#xff1a; 非主…

【Linux】缓存数据库Memcached、Memcached 安装、Memcached应用实例配置

一、 什么是缓存 缓存是指可以进行高速数据交换的存储器&#xff0c;它先于内存与CPU交换数据&#xff0c;因此速率很快。 从性能分析&#xff1a; CPU缓存>内存>磁盘>数据库 从性能来看内存是介于CPU和磁盘&#xff0c;在实际中内存是CPU和磁盘的桥梁。buffer和cache…

一、 JSP01 初识动态网页

一、 JSP01 初识动态网页 1.1 Web 应用程序开发 1.1.1 C/S 架构 客户端&#xff08;Client&#xff09;/服务器&#xff08;Server&#xff09;架构&#xff08;即 C/S 架构&#xff09;的系统主其分为客户端和用户端两层用户需要在本地安装客户端软件&#xff0c;通过网络与…

白话文讲计算机视觉-第十一讲-Harris算子

Moravec算子 说白了就是求两个像素点之间的差&#xff0c;然后平方一下给它变成正值。 其中&#xff0c;x&#xff0c;y表示像素点&#xff0c;u、v表示水平竖直方向的偏移量&#xff1b;w(x,y)为滤波函数&#xff0c;一般直接等于常数1。 I(xu,xv)、I(x,y )表示像素点(xu,xv)、…

基于zemax的折叠光路的激光扩束系统设计

激光扩束系统是激光干涉仪、激光测距仪、激光雷达等诸多仪器设备的重要组成部分&#xff0c;其光学系统多采用通过倒置的望远系统&#xff0c;来实现对激光的扩束&#xff0c;其主要作用是压缩激光束的空间发散角&#xff0c;使扩束后的激光束口径满足其他系统的要求。 激光器…

MySQL-图形化界面工具 (上)

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a;小刘主页 ♥️每天分享云计算网络运维课堂笔记&#xff0c;努力不一定有收获&#xff0c;但一定会有收获加油&#xff01;一起努力&#xff0c;共赴美好人生&#xff01; ♥️树高千尺&#xff0c;落叶归根人生不易&…

【sorting+双指针+数学】CF845div2 C. Quiz Master

和我一开始想的不太一样 一开始想的也是排序&#xff0c;然后双指针&#xff0c;但是我想的双指针是l1,rn的&#xff0c;因为我没注意到极差尽可能小这个条件可以转化为区间长度最短 其实就是尺取法&#xff0c;然后合法性就是这个区间内的数的所有因子能填满1~m这些格子 找…

Vue2 Vue3 Scoped 样式穿透

概念 主要是用于修改很多 Vue 常用的组件库&#xff08;Element, Vant, AntDesigin&#xff09;&#xff0c;虽然配好了样式但是还是需要更改其他的样式&#xff0c; 因为添加了 scoped 实现 css 模块化 就需要用到 样式穿透 &#xff0c;更改组件的样式 scoped 的原理 Vue …

route详解

一、前言 个人主页: ζ小菜鸡大家好我是ζ小菜鸡&#xff0c;让我们一起学习route。如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连) 二、什么是route Route就是用来显示、人工添加和修改路由表项目的。大多数主机一般都是驻留在只连接一台路由器的网段上。由于只有一台路…

1000个已成功入职的软件测试工程师简历经验总结:软件测试工程师简历项目经验怎么写?(含真实简历模板)

一、前言&#xff1a;浅谈面试 面试是我们进入一个公司的门槛&#xff0c;通过了面试才能进入公司&#xff0c;你的面试结果和你的薪资是息息相关的。那如何才能顺利的通过面试&#xff0c;得到公司的认可呢?面试软件测试要注意哪些问题呢?下面和笔者一起来看看吧。这里分享一…

【面试常见】链表带环

前言 一、什么是环形链表 二、判断链表是否带环 三、&#xff08;问题1&#xff09;slow和fast一定会相遇吗&#xff1f; 四、&#xff08;问题2&#xff09;fast一次走3/4/n步&#xff0c;还会相遇吗&#xff1f; 五、总结 前言 链表是面试中常见的一类题。分为单链表&#x…

Maven详细教程(图文并茂)

一、maven概述 1.1、项目开发中的问题 1、我的项目依赖一些jar包&#xff0c;我把他们放在哪里&#xff1f;直接拷贝到项目的lib文件夹中?如果我开发的第二个项目还是需要上面的那些jar包&#xff0c;再把它们复制到我当前项目lib中&#xff1f;那如果现在是第三次了&#xf…

ALSA子系统(十八)------指纹解锁动画提示声卡顿问题解析

你好&#xff01;这里是风筝的博客&#xff0c; 欢迎和我一起交流。 很久没写kernel相关的东西了&#xff0c;主要是来到手机厂之后&#xff0c;大部分还是在Android上&#xff0c;Kernel虽然也有涉及&#xff0c;但毕竟只是有所涉及&#xff0c;主要业务逻辑还是在HAL之上&am…

【c语言】详解 结构体的内存对齐补齐

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c语言系列专栏&#xff1a;c语言之路重点知识整合 &#x…

计算机网络的性能指标

1.计算机网络的性能指标 笔记来源&#xff1a;湖科大教书匠&#xff1a;计算机网络的性能指标 声明&#xff1a;该学习笔记来自湖科大教书匠&#xff0c;笔记仅做学习参考 1.1 速率 注意&#xff1a;数据量中1KB 2 10 B 2^{10}B 210B、数据率中1kb/s 1 0 3 10^{3} 103b/s 1.2…

Chatgpt如何引入新的知识?我们来看下ACL2023 预训练模型能否对新注入的知识进行推理这篇文章

一、概述 title&#xff1a;Can LMs Learn New Entities from Descriptions? Challenges in Propagating Injected Knowledge 论文地址&#xff1a;https://arxiv.org/abs/2305.01651 相关代码&#xff1a; EKP数据和代码&#xff1a;GitHub - yasumasaonoe/entity_knowle…

香橙派4和树莓派4B构建K8S集群实践之四:BuildKit与LNMP

目录 1. 说明 2. 开始前的准备工作 2.1 docker 验证用户信息设置 2.2 安装BuildKit 3. 安装步骤 3.1 申请一个pvc存储区 (wwwroot-pvc.yaml) 3.2 Nginx 3.3 php-fpm 3.3.1 构建并推送镜像 4. 遇到的问题 5. 相关命令 6. 参考 1. 说明 k8s带来的灵活性&#xff0c;使…

Linux系统之安装PDF阅读器

Linux系统之安装PDF阅读器 一、PDF介绍1. PDF简介2. PDF特点3. evince介绍 二、本次实践环境介绍1. 本地环境规划2. 本次实践介绍 三、本地环境检查1. 检查操作系统版本2. 查看系统内核版本 四、安装前准备工作1. 配置yum仓库2. 检查本地yum仓库状态3. 查看evince安装包 五、安…

怎样做好一场线上研讨会?

怎样做好一场线上研讨会&#xff1f; 1-策划和准备。在开始前&#xff0c;需要仔细策划和准备。确定研讨会的主题、目标、议程和参与者&#xff0c;并为参与者提供足够的信息和资源&#xff0c;以确保他们能够充分准备并参与讨论。 2-选择合适的在线平台。选择一个适合您需求…