1、安装
- Nexus Repository Manager是一个依赖库管理器,俗称Maven私服;在团队开发中,依赖库管理器对减少我们的一些低效率工作是非常有帮助的,例如:
- 每次添加新依赖的时候需要从中央仓库下载,速度非常缓慢;就算配置到了阿里云或者国内的一些其他的镜像库,有时候依然受制于我们工作环境的外网带宽等因素限定,肯定没有直接从内网私服拉取快捷; 团队成员之间开发一个大型的应用,应用服务之前相互依赖,由于这些应用服务你是不可能给它发布到中央仓库中去的(除非购买一些云服务厂商的仓库服务),那么在CI/CD(持续集成/持续部署)时将会非常麻烦;
- 某些场景下的开发(涉密系统开发),没有外网环境,那只能去内网私服仓库拉取依赖。
1.1、下载安装包
- 如果直接进官网地址,现在最新版的Nexus Repository Manager 3(后文简称Nexus3)需要登录或者留下用户信息才可以下载了,还是比较复杂的,毕竟我只是想下载一个安装包而已;当然要是直接通过访问链接的方式跳过以上步骤目前来看也是没有问题的,链接如下:
https://help.sonatype.com/repomanager3/download/download-archives---repository-manager-3
- 其中官方提供了三种操作系统的安装包,Unix、Windows、MacOS,如果你是Linux系统,那大胆使用Unix版本的安装包就可以了。
- Nexus 3这次改动还是比较大的,因此我重新更新一下安装步骤。
1.2、安装
- Nexus 3的安装也算比较简单,但是有一点要注意的是,Nexus也是基于Java开发,它在Vmoption中指定的默认堆内存大小是2G,如果你的服务器内存太小的话,可能不是特别友好,建议还是使用4G以上内存的服务器,不建议直接改它的默认配置。
- 直接解压我们刚才下载下来的安装包:
tar -zxvf nexus-3.33.1-01-unix.tar.gz
- 在启动尝鲜之前,由于Nexus3默认不允许使用root用户启动,因此需要先在我们的环境变量中添加上那么一句话:
vim /etc/profile
export RUN_AS_USER=root
source /etc/profile
- 进入 ${nexus_home}/bin 目录启动Nexus:
./nexus start
- 启动后,Nexus会自动在它默认的工作目录生成程序运行需要的一堆文件,其中包括我们的配置文件(安装包中的配置文件不建议更改):
cd ./sonatype-work/nexus3/etc
vim nexus.properties
- 如需要更改Web管理界面(基于Jetty)的启动端口,可以在这边进行更改;
2、配置为服务
- 每次启动需要去对应的目录中启动也是比较麻烦的,我们可以把 Nexus 3配置为服务,直接设置开机自动启动;
- 由于Nexus的启动文件相对比较复杂,并且关联的东西比较多,因此我们直接在/etc/init.d新建一个启动脚本-nexus文件;脚本内容如下:(NEXUS_HOME的内容根据自己安装路径配置)。
#!/bin/bash
export NEXUS_HOME=/usr/local/nexus/nexus-3.33.1-01
case $1 in
start) su root $NEXUS_HOME/bin/nexus start;;
stop) su root $NEXUS_HOME/bin/nexus stop;;
status) su root $NEXUS_HOME/bin/nexus status;;
restart) su root $NEXUS_HOME/bin/nexus restart;;
*) echo "require start | stop | restart | status " ;;
esac
chmod +x /etc/init.d/nexus
chkconfig nexus on
chkconfig nexus off
3、配置防火墙
- 开放主机的Nexus客户端访问端口(默认是8081);CentOS 7使用firewall程序配置。
firewall-cmd --zone=public --add-port=8081/tcp --permanent
systemctl restart firewalld.service
- 配置完防火墙后就可以在外部访问管理Web了: