手把手教你安装Nexus

文章目录

  • 手把手教你安装Nexus
    • 为什么要构建Nexus私服
    • Nexus安装环境
    • Nexus安装步骤
    • Nexus搭建maven私服
    • Nexus搭建npm私服
    • 参考文档
    • 备注

手把手教你安装Nexus

为什么要构建Nexus私服

  • 如果没有Nexus私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响项目的进程。
  • 很多情况下项目的开发都是在内网进行的,连接不到maven仓库怎么办呢?开发的公共构件怎么让其它项目使用?这个时候我们不得不为自己的团队搭建属于自己的maven私服,这样既节省了网络带宽也会加速项目搭建的进程。

Nexus安装环境

  • 介质:nexus-3.19.1-01
  • 操作系统:CentOS7+
  • 硬件: 4C-8G-40G
  • 软件:JDK8+
  • 用户权限:
    • 使用专用的操作系统用户帐户在给定主机上运行nexus。新建用户:nexus,密码:nexus

    • 足够的文件句柄限制:确保用户的打开文件描述符数量限制增加到65,536或更高(/etc/security/limits.conf)

Nexus安装步骤

  • 下载地址:https://sonatype-download.global.ssl.fastly.net/repository/repositoryManager/3/nexus-3.19.1-01-unix.tar.gz

下载需要

  • root用户登录服务器创建nexus用户并授权
groupadd nexus
useradd nexus -g nexus
passwd nexus
提示输入密码:nexus
再次输入密码:nexus

mkdir -p /usr/local/nexus/
chown -R nexus:nexus /usr/local/nexus/
chmod 777 /usr/local/nexus/
  • nexus用户登录服务器,上传nexus-3.19.1-01-unix.tar.gz至/usr/local/nexus/目录,并解压
cd /usr/local/nexus/ && tar -zxvf nexus-3.19.1-01-unix.tar.gz

mv nexus-3.19.1-01 nexus
  • 修改nexus启动初始化内存(不是必须的,视服务器配置决定,4C8G则不需要修改
vi /usr/local/nexus/nexus/bin/nexus.vmoptions(默认2700m)
  • 修改nexus端口(不是必须的,默认监听端口8081
vi /usr/local/nexus/nexus/etc/nexus-default.properties
  • 启动:
cd /usr/local/nexus/nexus/bin && ./nexus start
或者
cd /usr/local/nexus/nexus/bin && ./nexus run &

启动成功的提示:Starting nexus
----------------------------------------------
如果是root用户启动,则会提示:
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
Starting nexus
说明已经安装启动成功,上面报错意思是nexus建议不要用root用户来启动nexus,但并不影响启动
  • 检查nexus进程:
ps -ef | grep nexus
  • nexus日志目录:/usr/local/nexus/sonatype-work/nexus3/log

  • 浏览器直接访问:http://ip:port

手把手教你安装Nexus_第1张图片
手把手教你安装Nexus_第2张图片

Nexus搭建maven私服

  • 首次登陆,系统会提示你admin的密码存放在服务端某个文件中。(根据提示修改密码即可)
  • 登陆admin后,可以点击上面的“设置”图标,在“设置”里可以添加用户

手把手教你安装Nexus_第3张图片

  • 创建仓库:
    • 创建proxy仓库 作用是去远程拉取jar包

手把手教你安装Nexus_第4张图片

- 创建hosted仓库 作用是存放本地上传的三方jar包
- 创建group仓库 作用是将proxy和hosted放到这个组里,进行统一管理

手把手教你安装Nexus_第5张图片

proxy建议配置阿里云maven地址:http://maven.aliyun.com/nexus/content/groups/public

  • 这里多提一个小知识!!!有的时候,我们会用到第三方仓库作为proxy,此时需要配置Routing Rules,即声明什么jar该从什么proxy下载。此处以jeecg仓库为例:

手把手教你安装Nexus_第6张图片

手把手教你安装Nexus_第7张图片

意思就是所有下载路径包含/org/jeecgframework/的jar,全部去jeecg proxy下载

手把手教你安装Nexus_第8张图片

意思就是所有下载路径包含/org/jeecgframework/的jar,全部禁止从aliyun proxy下载

  • maven设置settings:

     nexus-xu
     internal nexus repository
     http://ip:8081/repository/java-group/
     !internal.repo,*

  • 然后build项目,查看项目是否从私服下载jar包

手把手教你安装Nexus_第9张图片
手把手教你安装Nexus_第10张图片

Nexus搭建npm私服

此处搭建过程同上

  • 创建仓库:
    • proxy(代理仓库):可以代理npm和淘宝镜像
    • 创建hosted(私有仓库):用于发布个人开发的npm组件
    • 创建group(组合仓库):对外公开的仓库,集合了hosted和proxy

proxy建议配置淘宝镜像:https://registry.npm.taobao.org

  • 客户端设置npm:npm config set registry http://ip:8081/repository/npm-group/

参考文档

  • System Requirements
  • Nexus Repository Manager - Proxying Maven and npm Quick Start
  • Linux搭建Nexus3.X私服
  • 使用nexus搭建npm私服

备注

  • 文章写得不是很详细,具体可以通过实际操作,总结经验,不喜勿喷。

你可能感兴趣的:(Maven)