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会自动在它默认的工作目录生成程序运行需要的一堆文件,其中包括我们的配置文件(安装包中的配置文件不建议更改):
#进入指定的目录 (sonatype-work工作目录与nexus安装目录同级)
cd ./sonatype-work/nexus3/etc
vim nexus.properties
- 如需要更改Web管理界面(基于Jetty)的启动端口,可以在这边进行更改;
2、配置为服务
- 每次启动需要去对应的目录中启动也是比较麻烦的,我们可以把 Nexus 3配置为服务,直接设置开机自动启动;
- 由于Nexus的启动文件相对比较复杂,并且关联的东西比较多,因此我们直接在/etc/init.d新建一个启动脚本-nexus文件;脚本内容如下:(NEXUS_HOME的内容根据自己安装路径配置)。
#!/bin/bash
#chkconfig:2345 20 90
#description:nexus
#processname:nexus
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了:
版权声明:本文为weixin_44353336原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。