一、安装

1、官网下安装包

官网地址:Nexus Repository OSS - Software Component Management | Sonatype

但是需要连接V*N。

2、scp方式copy到linux想要传的目录下

3、安装

解压:

tar -zxvf nexus-x.x.x-unix.tar.gz

cd到/bin目录下,启动nexus:

./nexus start

4、访问

http://服务器IP:8081

8081是默认的,可以在etc/nexus-default.properties中修改。

二、界面配置私有仓库

1、登录

nexus3以前默认是admin/admin123,nexus3的账户名还是admin,但是password在sonatype-work/nexus3/admin.password中。

2、Repository设置

1)创建私有仓库

2)选择maven2(proxy)

3)设置name,url,这里proxy设置阿里云镜像

http://maven.aliyun.com/nexus/content/repositories/central/

(阿里云镜像链接好像有多个,如果我这个不合适可以自行参考阿里云仓库配置:仓库服务)

4)再创建一个maven2(group)仓库组

设置members顺序

3、设置roles角色、users用户

1)创建角色

分配权限

2)创建用户,分配角色

可以退出admin,用创建的用户登录了。

四、settings文件修改,pom文件修改

1、setting文件设置

修改servers、修改mirrors

<servers><!--第一个nx-develop要和下面的mirror中的id一致,代表拉取是也需要进行身份校验--><server><id>nx-develop</id><username>develop</username><password>****</password></server><server><id>nexus-releases</id><username>develop</username><password>****</password></server><server><id>nexus-snapshots</id><username>develop</username><password>****</password></server></servers><mirrors><!-- 私有仓库 --><mirror><id>nx-develop</id><url>http://x.x.x.x:8081/repository/poppy-group/</url><mirrorOf>central</mirrorOf></mirror> </mirrors>

2、修改maven项目中的pom文件

因为是微服务项目,所以在parent的pom中加上distributionManagement,子项目就可以deploy jar包了。注意这个id需要有settings文件中server配置的一样。

<distributionManagement><repository><id>nexus-releases</id><name>corp nexus-releases</name><url>http://x.x.x.x:8081/repository/maven-releases/</url></repository><snapshotRepository><id>nexus-snapshots</id><name>corp nexus-snapshots</name><url>http://x.x.x.x:8081/repository/maven-snapshots/</url></snapshotRepository>
</distributionManagement>

五,配置Nexus在linux开机自启动

1、新建脚本(root用户)

vim /etc/init.d/nexus

2、添加脚本内容

#!/bin/bash
#chkconfig:2345 20 90
#description:nexus
#processname:nexusexport JAVA_HOME=/usr/local/jdk1.8.0_60case $1 instart) su root /usr/local/nexus-3.37.1-01/bin/nexus start;;stop) su root /usr/local/nexus-3.37.1-01/bin/nexus stop;;status) su root /usr/local/nexus-3.37.1-01/bin/nexus status;;restart) su root /usr/local/nexus-3.37.1-01/bin/nexus restart;;dump) su root /usr/local/nexus-3.37.1-01/bin/nexus dump;;console) su root /usr/local/nexus-3.37.1-01/bin/nexus console;;*) echo "Usage: nexus {start|stop|run|run-redirect|status|restart|force-reload}"
esac

注意写自己的nexus版本和java版本。

3、给脚本分权限

chmod 744 /etc/init.d/nexus

4、service快捷命令

#启动
service nexus start
#停止
service nexus stop
#重启
service nexus restart
#查看nexus的状态
service nexus status

5、配置开机自启动

#向chkconfig添加 nexus 服务的管理
chkconfig --add nexus
#设置nexus服务自启动
chkconfig nexus on
#关闭nexus服务自启动
chkconfig nexus off
#删除nexus服务在chkconfig上的管理
chkconfig –del nexus

至此,本地的私有仓库配置已完毕,install构建一下项目,看是否是从私服拉的jar包即可,基本没什么问题了。

但是我们的测试/生产环境是通过jenkins打包发布的,发现并不能成功,报下面的错误:

六、解决jenkins连接私服打包报错的问题

1、给jenkins配置settings.xml文件,两种方法

1)jenkins系统管理 -> Managed files(没有需要去下载插件) -> Add a new Config -> Maven settings.xml -> submit -> 填写相关setting内容

2)新建maven job -》构建环境 -》"Provide Configuration files"的file选项中选择自己定义的settings文件 -》 “build”中点击“高级...” -》在“使用自定义的工作空间”中settings file选项中选择“provided settings.xml” -》点击保存

3)缺点是需要每个job都要设置build。但是也可以设置全局,不过会影响其他不需要私服的job。

2、在jenkins所在的linux服务器上配置

vim /var/lib/jenkins/.m2/settings

这样jenkins全局使用的都是这个settings,不用每个job配置了。

/var/lib/jenkins/tools/hudson.tasks.Maven_MavenInstallation/maven/conf

是jenkins默认的settings文件位置。

3、报错原因

是jenkins的maven版本过高,查看maven版本是3.8.2,maven3.8.2以上都会block掉了所有HTTP协议的repositories,所以会报错。

4、解决

1)降低maven版本,我就这么解决的,重新下了一个3.6.3的maven,给jenkins设置了一下。

2)用nginx代理将http的镜像地址映射成https的就可以。(嫌麻烦,没试,可行性需要实践)

Nexus搭建私有仓库相关推荐

  1. Nexus 搭建私有镜像仓库

    Nexus 搭建私有镜像仓库 说明 国内网络环境下直接使用默认的 npm 下载资源过慢,所以很多文章中都建议将 npm 的 registry 切换为 淘宝的 npm 镜像,如下 npm config ...

  2. Nexus搭建私有Maven仓库用户角色创建和权限分配

    Nexus搭建私有Maven仓库用户角色创建和权限分配 前提:已经搭建好私有仓库,并且可以正常访问,搭建方式可根据官方文档操作 在浏览器中打开控制台,并使用admin账号进行登录 1. 创建Repos ...

  3. 使用nexus搭建离线仓库

    使用nexus搭建离线仓库 本地搭建nexus中心仓库 配置nexus 外网配置maven 打包nexus 外网中打包nexus容器和maven工具就可以直接拷贝到内网中 导入容器 注意事项 背景:在 ...

  4. docker搭建私有仓库

    紧接上一篇镜像发布到官方之后,我们来搭建我们自己的私有仓库,比较,如果真的要在生产环境使用的话,这是必须的. 首先,我们来准备一下搭建私有仓库所需要的信息. #先吧私有仓库down下来,这需要一点时间 ...

  5. Docker入门之四搭建私有仓库

    前面学习了下镜像和容器,今天来学习下仓库,来搭建本地私有仓库.当然可以使用远程的共有的仓库,但在企业中有的还是放在本地,所以需要搭建私有仓库. 一.搭建仓库 可以在容器中run一个仓库镜像. dock ...

  6. 【Docker】Registry搭建私有仓库、证书认证、用户登录认证

    一.Docker Registry工作原理 02_Docker Registry角色 Docker Registry有三个角色,分别是index.registry和registry client. i ...

  7. Docker 容器仓库之搭建私有仓库、hub仓库

    一.什么是仓库 Docker 仓库是用来包含镜像的位置,Docker提供一个注册服务器(Register)来保存多个仓库,每个仓库又可以包含多个具备不同tag的镜像. Docker运行中使用的默认仓库 ...

  8. 玩转NPM,搭建私有仓库-姜威-专题视频课程

    玩转NPM,搭建私有仓库-152人已学习 课程介绍         NPM是前端工程师必用的工具之一,本课程从 install 项目管理开始,逐步介绍NPM的相关命令,如何上传第一个自己的npm包,如 ...

  9. Harbor搭建私有仓库

    Harbor搭建私有仓库 Harbor简介     Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,可以用来构建企业内部的Docker镜像仓库.详细介绍可参考 [干货] ...

最新文章

  1. 更新假设raw file(audio file format) How to convert endianness
  2. SSRS 2012 交互式报表 -- 层次性文档结构图
  3. Vue 路由 过渡动效 数据获取
  4. boost的字符串处理函数——format
  5. JAVA实现包含main函数的栈问题(《剑指offer》)
  6. 多线程在任何情况下均能提高效率吗?
  7. 基于稀疏表示的人脸识别 (SRC,LASRC,RASL,MRR)
  8. python怎么画心形图案_Python数学方程式画心型图案源码示例
  9. js随机跳转域名_【教程】无需域名和服务器搭建属于自己的导航页!!!
  10. 在Ubuntu 16.04 LTS下编译安装OpenCV 4.1.1
  11. 洛谷 - P7771 【模板】欧拉路径(Hierholzer算法)
  12. 办公室分配方案python_Python自动化办公室(1),python,一
  13. 元旦限时特惠,耳机、书籍等大降价
  14. Java设计模式1:设计模式概论
  15. java利用redis实现排行榜_Java简单使用redis-zset实现排行榜
  16. 设计模式二:结构型模式
  17. MySQL为用户授权
  18. mysql 的下划线搜索转义
  19. 场景文字检测——CTPN模型介绍及代码实现
  20. 计算机控制实验室装置,自控/计控原理实验箱 实验仪 实验装置 教学实训设备...

热门文章

  1. python爬虫requests.getcookie_爬虫14 案例--requests使用Cookie登录京东商城
  2. 如何在 R 中进行 Bartlett 的球形检验
  3. API实现自动处理物料搬运单
  4. 零基础编程学习的6个常用网站,包含课程和项目
  5. 常用的 shall 命令 及 语法
  6. 今年的双11,真的是太太太太太太香了!万元好礼回馈......
  7. 时间的计算的技术支持
  8. 搜啊搜(论两种搜索方法)
  9. ssm+JSP计算机毕业设计珠宝古董鉴赏系统69gw5【源码、程序、数据库、部署】
  10. 使用MobLink点击链接打开app