Centos7环境下Nexus的安装与使用

Hi, Everyone!Welcome to DQF's Blog,For technical exchange, Please add QQ: 905030209,Thanks!

Nexus的安装与使用

Nexus介绍

nexus是一个强大的maven仓库管理器,它极大的简化了本地内部仓库的维护和外部仓库的访问.
nexus是一套开箱即用的系统不需要数据库,它使用文件系统加Lucene来组织数据
nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过IDEA和Eclipse集成使用
nexus支持webDAV与LDAP安全身份认证.
nexus提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,占用较少的内存,基于简单文件系统而非数据库.

安装部署

0.环境依赖
Nexus Repository Manager 需要 Java 8 运行环境,Unix的发行版不包括运行时环境,因此需要安装完整的JDK或JRE,JDK的安装配置请参照独在黄昏后的博文:CentOS下安装JDK的三种方法

1.下载Nexus安装包

cd /data/tools
wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz

2.解压Nexus安装包

tar xvf nexus-3.14.0-04-unix.tar.gz -C /usr/local/
ln -s /usr/local/nexus-3.14.0-04/ /usr/local/nexus

3.编辑nexus.rc文件

此文件允许nexus以root用户运行,默认非root用户运行

vim /usr/local/nexus/bin/nexus.rc

添加如下内容:

run_as_user="root"

4.编辑nexus.service

cat >> /etc/systemd/system/nexus.service <<EOF
[Unit]
Description=nexus service
After=network.target

[Service]
Type=forking
LimitNOFILE=65536
ExecStart=/usr/local/nexus/bin/nexus start
ExecStop=/usr/local/nexus/bin/nexus stop
User=root
Restart=on-abort

[Install]
WantedBy=multi-user.target
EOF

5.启动服务并检查启动状态

sudo systemctl daemon-reload
sudo systemctl enable nexus.service
sudo systemctl start nexus.service
sudo systemctl status nexus.service

6.查看nexus启动日志

tail -f /usr/local/sonatype-work/nexus3/log/nexus.log

7.登录nexus界面

浏览器访问nexus地址,以默认用户admin,默认密码admin123登录,可得如下界面:

使用教程

我们这里以NEXUS搭建MAVEN仓库为例进行说明:
1.1 访问nexus仓库
如下图以用户admin密码admin123登录nexus仓库,nexus地址为http://11.11.160.76:8081/

1.2 登录管理界面
在此界面中是nexus管理界面可配置存储、仓库、用户、安全策略等,具体请看官方文档

1.3 创建Maven仓库
在上幅图中点击create Repository然后选择maven2(hosted)后会进入后续maven仓库配置。


1.4 查看已创建仓库
在Browse中查看已创建的仓库,并获取自己需要的仓库地址

1.5 加入maven-public公仓
在后台管理界面点击maven-public仓库,这里可对单仓进行组合

2 添加JAR包
2.1 单个添加jar包
根据自己需求选择仓库进行添加

2.2 批量添加jar包
目前nexus界面上不支持批量操作,需要在能与nexus服务器上网络互通的服务器上进行批量操作,具体操作如下图所示:

请在相对路径下执行下面命令进行批量上传:

find . -type f -exec curl -v -u 'admin:admin123' -T {} 仓库地址{} \;
# 示例上传到maven-java仓库命令
find . -type f -exec curl -v -u 'admin:admin123' -T {} http://11.11.160.76:8081/repository/maven-java/{} \;

出现下面图示则说明上传成功

2.3 批量删除jar包
请在原来的上传路径下执行下面命令进行批量删除:

for jar in $(find . -type f );do curl -X DELETE --user 'admin:admin123' "http://11.11.160.76:8081/repository/dqf-maven/"$jar;done

资料链接

  • Nexus下载链接
https://download.sonatype.com/nexus/3/latest-unix.tar.gz
  • Nexus安装教程
https://help.sonatype.com/repomanager3/installation/run-as-a-service
  • Nexus帮助文档
https://help.sonatype.com/docs
Leave a Reply

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Blog Theme: FreeDom by DQF.