sonatype nexus properties manager介绍及部署

背景

公司的repository仓库地址发生变更,jar包由以前的index模式变成了sonatype nexus管理…
-----------> >
sonatype nexus官方网站链接
官网文档quick-start-guides

1.搭建及部署

1.1.工具介绍

Sonatype nexus 是sonatype公司的一款制品管理工具,自身提供了OSS 开源免费版及PRO商业版。这这里笔者主要学习的为OSS(免费真香)。

1.2.工具下载

Nexus提供了二进制部署及镜像部署这两种方式,
二进制部署可通过https://help.sonatype.com/repomanager3/download/download-archives—repository-manager-3 下载,
镜像可通过https://hub.docker.com/r/sonatype/nexus3/tags/ 进行下载

1.3.部署服务器要求

CPU:最少为4,推荐为8+
内存:建议8G起步,规模大可考虑16G甚至是32G+
JAVA:JDK8
句柄数:至少为65536
磁盘空间:多多益善,官方建议500G

windows部署:参考文档

1.4二进制部署

1、 创建程序用户

useradd nexus

2、 修改句柄数
在 /etc/security/limits.conf 中添加

nexus - nofile 65536

3、 重启服务

reboot

4、 部署java

tar zvxf jdk-8u231-linux-x64.tar.gz
mv jdk-8u231 /opt/jdk

修改 /etc/profile

export JAVA_HOME=/opt/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar

保存后执行 source /etc/profile
5、 部署nexus

cd /opt
wget http://download.sonatype.com/nexus/3/nexus-3.24.0-02-unix.tar.gz
tar zvxf nexus-3.24.0-02-unix.tar.gz
mv nexus-3.24.0-02 nexus
cd nexus/bin

在nexus 中修改第14行

# INSTALL4J_JAVA_HOME_OVERRIDE=

为java的部署路径否则有概率启动报错
在nexus.rc中修改为

run_as_user="nexus”

在/opt/nexus/etc/nexus-default.properties中可修改默认端口(可选)
修改文件权限

chown -R nexus:nexus /opt/nexus
chown -R nexus:nexus /opt/sonatype-work

切换用户,启动服务

su nexus
cd /opt/nexus/bin
./nexus start

1.5.docker 部署

docker run \
-p 8081:8081 \
--name nexus \
--ulimit nofile=65536:65536 \
--restart always \
sonatype/nexus3

即可完成部署
PS:一般情况下默认的登录信息为admin/admin123,不过有的时候会提示密码错误,这个时候就需要找一下/opt/sonatype-work/nexus3目录下的admin.password文件,使用该密码登陆后会提示用户设置admin密码。

1.6.仓库创建

登录nexus后,可以按照如下顺序点击,即可创建私服仓库了。
在这里插入图片描述
可以看到支持的存储种类是非常多的
在这里插入图片描述
在这里插入图片描述
仓库类型主要分为

  • proxy:代理公网上的仓库,比如maven的中央仓库,node的阿里镜像

  • hosted:本地仓库,一般是私有仓库,用于发布自己公司开发的制品

  • group:组,把几个仓库结合在一起,方便下载制品

1.7.创建proxy代理仓库

1、选择npm(proxy)
在这里插入图片描述
2、命名并输入代理地址,保存
在这里插入图片描述
3、本地配置npm config或npm install时指定为私服代理
在这里插入图片描述
4、安装成功后产看代理仓库,发现已经缓存下来刚刚安装的node依赖了
在这里插入图片描述

1.8.创建hosted仓库

1、以maven(hosted)为例

选择maven2(hosted)仓库
在这里插入图片描述
2、配置仓库名,仓库中可保存包的version规则,上传规则后保存。
在这里插入图片描述
其中vesion规则里面,release为发布版,snapshot为快照版,mixed为混合,建议release和snapshot分开保存,同时严格遵守版本规则。其中发布版release突出其稳定性,所以禁止redeploy,如果包变更,请升级版本号。

3、配置完毕的仓库(私服)
在这里插入图片描述
4、上传jar包

方案一:有项目源码时,通过maven命令,打包源码后上传,在构建时,可在settings.xml中配置Repository标签和server标签,然后通过mvn deploy命令上传到对应私服仓库。

方案二:通过调用接口上传

POST /service/rest/v1/components

curl -v -u admin:admin123 -X POST ‘http://192.168.1.62:8081/repository/example_maven_release/’ -F maven2.groupId=com.google.guava -F maven2.artifactId=guava -F maven2.version=24.0-jre -F maven2.asset1=@guava-24.0-jre.jar -F maven2.asset1.extension=jar -F maven2.asset2=@guava-24.0-jre-sources.jar -F maven2.asset2.classifier=sources -F maven2.asset2.extension=jar

方案三:在只有j制品时,通过maven命令直接上传

mvn deploy:deploy-file -Dfile=guava-24.0-jre.jar -DpomFile=guava-24.0-jre.pom -Dpackaging=jar -DrepositoryId=bxbank_privrepository_snapshots -Durl=http://192.168.1.62:8081/repository/example_maven_release/

1.9.创建group

1、创建以npm(group)为例

npm因自身有多个代理可选择,所以可以选择group的模式来实现配置后可从多个npm代理中下载依赖的目的

创建npm group
在这里插入图片描述
2、配置组名及npm组中需要的代理及私服
在这里插入图片描述

持续更新。。。

  • 0
    点赞
  • 0
    评论
  • 1
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

bigdata王一

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值