①、可以使用以下命令进行安装Nexus的最新版本
wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz
②、也可以点击官网复制想要下载的Nexus压缩包进行安装
Nexus官网地址: Neuxs官网地址
从官网上获取到安装地址后,使用该命令进行安装
wget https://download.sonatype.com/nexus/3/nexus-XXXXXXXX-unix.tar.gz
1、切换到上传Nexus安装包的路径下
cd /tmp/ #切换到tmp路径下
1.
2、把nexus安装包移动到home路径下
登录后复制
mv nexus-3.49.0-02-unix.tar.gz /home/admin/ #移动到home路径下
cd /home/admin/ #切换到home路径
ls #查看homg路径中是否有移动过来的nexus安装包
mkdir nexus #创建文件夹
ls #查看homg路径中是否有创建好的文件夹
mv nexus-3.49.0-02-unix.tar.gz nexus #把nexus安装包移动到创建好的文件夹中
cd nexus/ #切换到刚才创建好的nexus文件夹中
ls #查看移动过来的nexus安装包
3、解压nexus安装包
tar -zxvf xxxx -C yyyy 将xxxx 解压至yyy目录下
tar -zxvf nexus-3.49.0-02-unix.tar.gz #解压
ls #查看是否有截图中的两个文件
cd nexus-3.49.0-02 #切换到nexus-3.49.0-02路径下
ls # 查看
cd etc/ #切换到etc路径下
ls #查看
vi nexus-default.properties #编辑nexus-default.properties文件
默认的端口号为8081,这里我修改为了8089,端口号可以根据需要进行修改
4. 赋予nexus文件夹权限,方便启动和操作:
bash
sudo chown -R 200:200 /opt/nexus-3.23.0-01
5. 配置环境变量,编辑/etc/profile文件,在末尾添加:
bash
export NEXUS_HOME=/opt/nexus-3.23.0-01
export PATH=$PATH:$NEXUS_HOME/bin
使环境变量生效:
bash
source /etc/profile
非root权限用户执行防火墙相关命令时,需要在命令前加上sudo,提升权限并根据提示输入密码
sudo firewall-cmd --query-port=8089/tcp #查询8089端口是否开启
sudo firewall-cmd --add-port=8089/tcp --permanent #添加指定需要开放的端口
sudo firewall-cmd --reload #重启防火墙
Nexus默认端口为8081,可以在/opt/nexus-3.23.0-01/etc/nexus.properties文件中配置。启动后即可访问http://yourserver:8081访问Nexus界面。
登录Nexus,默认账号密码为admin/admin123。Login成功后会让你选择一个新的强密码。
在 /home/thp/public/nexus/nexus-3.25.1-04/bin 目录下,执行脚本命令,以后台进程的形式(不占用当前命令终端窗口),启动 Nexus 服务:
启动需要等待一段时间,可用浏览器访问 linux 服务器ip:8081 来验证服务是否启动好。
cd .. #切换到上一级
ls #查看
cd bin/ #切换到bin路径下
ls #查看
./nexus start #启动nexus
ps aux | grep nexus #查看nexus是否启动
在 /home/thp/public/nexus/nexus-3.25.1-04/bin 目录下,执行脚本命令,以当前进程形式(会占用当前命令终端窗口),启动 Nexus 服务:
./nexus run
等待一段时间后,看到类似如下信息,则为启动成功:
总结:
为了不占用当前命令终端窗口,推荐使用 2.1 start命令启动(后台进程形式)Nexus 服务。
“/root/.m2/repository"目录通常是指Unix/Linux系统上的本地Maven仓库。Maven是一种流行的构建自动化工具,主要用于Java项目。本地仓库是在构建过程中从远程仓库下载的所有依赖和构件的缓存。
在Maven中,当您在项目的POM(Project Object Model)文件中指定项目依赖关系时,Maven会自动从远程仓库下载这些依赖项并将它们存储在本地仓库中。这有助于加快后续构建的速度,避免了重复下载相同的依赖项。
默认情况下,本地Maven仓库的位置通常位于Unix/Linux系统上的”~/.m2/repository"目录下。“/root"目录是root用户的主目录,因此”/root/.m2/repository"指的是该系统上特定于root用户的本地Maven仓库。
验证方式有很多种:
1、linux 系统命令终端 查看 8081 端口所占用的进程:
netstat -tunlp | grep 8081
ps -ef|grep nexus
1、打开Nexus页面后,登录时会出现以下提示,根据路径提示可以找到初始密码
cd /home/admin/Nexus/sonatype-work/nexus3/
cat admin.password
依次点击 Repository 仓库管理图标(齿轮)、 Roles、Create role、Nexus role:
![在这里插入图片描述](https://img-blog.csdnimg.cn/263d150c95bc45b49ccd7944dec74855.png)
检索 自定义仓库的库名,赋予权限 nx-repository-view-maven2-自定义库名-*:
注意:
这些权限一定要配置完整,否则很容易导致各种问题(比如:maven项目上传依赖失败等)
验证用户:
点击右上角 Sign out ,退出 admin 账号的登录状态,并使用 刚刚创建的自定义用户登录试试:
登录成功后,需要输入一个凭证,可以随便输入点什么,也可以直接 Cancel:
拓展:
可以看到虽然登录成功了,但权限比较少
在首页中,可以 看到这个用户并没有 Search、Browse 和 Upload 选项:
解决:
重新用 admin 账号登录后,找到我们之前创建的角色,并分别检索 search、browse、upload 关键字,把 nx-search-read、nx-repository-view-*-*.browse、nx-comopnet-upload 权限赋予给该角色:
再次以自定义用户登录,在首页中可以看到导航栏上出现了 Search、Browse 和 Upload 选项了:
依次点击首页图标(箱子) 、Upload、最定义的私库:
这是因为上传的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 包已经手动上传成功:
主要是指在使用maven项目进行打包操作时,可以配置自定义的nexus仓库ip地址,并上传到该仓库中去,具体步骤如下:
1.修改 maven 的 settings.xml 配置文件:
如:IDEA中,点击左上角的 File - Settings ,检索 maven 关键字,可以看到自己当前项目所引用的 maven 配置:
cell
cell
xxxx
xxx-nexus
Xxx Nexus3 Repository
http://自定义仓库ip:8081/repository/xxx-nexus/
打开 IDEA 的 右侧的 Maven Projects 窗口,依次点击 左上角的 reimport图标、LifeCycle 下的 deploy:
上传成功: