环境要求
- centos7.x
- JDK8
- nexus3.x
一、安装步骤
-
创建文件夹并进入该目录
cd /usr/local && mkdir nexus && cd nexus
-
下载nexus安装包
wget http://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.6.0-02-unix.tar.gz
-
解压、重命名
tar -zxvf nexus-3.6.0-02-unix.tar.gz //解压 mv nexus-3.6.0-02 nexus //重命名
-
自定义配置
如果Linux硬件配置比较低的话,建议修改为合适的大小,否则会出现运行崩溃的现象
[root@iZ2ze85opgs9otm3dscl3lZ bin]# pwd /usr/local/nexus/nexus/bin # vim nexus.vmoptions //虚拟机选项配置文件
-
启动nexus
启动Nexus(默认端口是8081),Nexus常用的一些命令包括,/usr/local/nexus/nexus/bin/nexus {start | stop | run-redirect | status | restart | force-reload} 下面是启动Nexus:
启动命令:bin/nexus start
[root@iZ2ze85opgs9otm3dscl3lZ bin]# ./nexus start WARNING: ************************************************************ WARNING: Detected execution as "root" user. This is NOT recommended! WARNING: ************************************************************ Starting nexus
以上说明已经按照成功,上面报错的意思是nexus建议不要用root用户来启动nexus,但是并不影响启动。
-
其它说明
- Nexus默认的端口是8081,可以在 etc/nexus-default.properties配置中修改
[root@iZ2ze85opgs9otm3dscl3lZ etc]# pwd /usr/local/nexus/nexus/etc
-
Nexus默认的用户名密码是admin/admin123
-
当遇到奇怪问题时,重启nexus,启动时间会比较慢 要1分钟左右后才能访问
-
Nexus的工作目录是sonatype-work(路径一般在nexus同级目录下)
二、仓库介绍
当访问:http://ip:8081会有nexus界面
用户登录,进入Repositories页面点击Nexus “Log in”,输入默认用户名(admin)和默认密码(admin123)登录,后找到Repositories。
-
四种仓库类型介绍
默认仓库介绍- maven-cental:maven中央仓库,默认从https://repo1.maven.org/maven2拉取jar
- maven-releases:私仓发行版jar
- maven-snapshots:私库快照(调试版本)jar
- maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用。
Nexus默认的仓库类型有以下四种:(上面的名字可以随便取,关键是它对应的是什么仓库类型)
- group(仓库组类型):又叫组仓库,用于方便开发人员自己设定的仓库 - hosted(宿主类型):内部项目的发布仓库(内部开发人员,发布上去存放的仓库) - proxy(代理类型):从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage Location属性的值即被代理的远程仓库的路径) - virtual(虚拟类型):虚拟仓库(这个基本用不到,重点关注上面三个仓库的使用) - Policy(策略):表示该仓库为发布Release版本仓库还是快照Snapshot版本仓库
2.仓库拉取jar包流程
-
maven可直接从宿主仓库下载构件,也可以从代理仓库下载构件,而代理仓库间接的从远程仓库下载并缓存构件
-
为了方便,maven可以从仓库组下载构件,而仓库组并没有时间的内容(下图中用虚线表示,它会转向包含的宿主仓库或者代理仓库获得实际构件的内容).
三、创建新用户和新仓库
- 创建用户
登录admin后,可以点击上面的设置“图标”,在设置里可以添加用户、角色、对接LDAP等设置,如下:
创建好用户,重新用创建的用户登录即可。
- 创建仓库
上面对仓库的概念清晰之后,我们来创建新仓库,主要创建3个仓库
1、proxy仓库,作用是去远程拉取jar包
2、hosted仓库,作用是存放本地上传的三方jar包
3、group仓库,作用是将上面两个放在这里,进行统一管理
proxy代理仓库创建
中央仓库的代理默认为https://repo1.maven.org/maven2/我们可以更换阿里云中央仓库。
hosted仓库创建
host仓库这里有两种不同类型的存储类型
group仓库
主要就是把上面三个仓库放到该组里面,然后让这个组给外部访问。
有关linux上面搭建Nexus3.0的工作已经完成,接下来就是配置maven相关配置文件,来测试该仓库是否配置成功。
四、参考
1、 使用 Nexus 3.x 搭建 Maven2 私服(对组解释很好)
2、 Linux 使用 Nexus3.x 搭建 Maven 私服指南 (一整套讲的还是蛮清晰的)
3、linux部署Nexus OSS(这里面将默认镜像改成了阿里云镜像)
4、Linux搭建Nexus3.X私服(Linux搭建Nexus3.X私服)