Linux上安装nexus搭建maven私服

目录

一、机器及系统环境准备

1.1 机器准备
#一台虚拟机
hostname:myhost
ip:ip_address
1.2 系统环境
[root@myhost ~]$ cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root@myhost ~]$  firewall-cmd --state							 #查看防火墙的状态
running
[root@myhost ~]$  firewall-cmd --list-ports                       #查看防火墙已经开放的端口
[root@myhost ~]$  firewall-cmd --list-services                    #查看防火墙开放的服务
dhcpv6-client ssh
#假设设置nexus的web服务端口为8081,允许8081/tcp端口访问 
[root@myhost ~]$  firewall-cmd --zone=public --permanent --add-port=8081/tcp
success
[root@myhost ~]$  firewall-cmd --reload                           #重新加载防火墙配置
success 
[root@myhost ~]$  sed -i  "s/SELINUX=enforcing/SELINUX=disabled/g"  /etc/sysconfig/selinux && setenforce 0  &&  getenforce  #关闭selinux
Permissive

1.3 JDK安装

nexus 和tomcat一样运行需要java支持,所以先安装JDK。这里我已经安装好了!

[root@myhost ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

[root@myhost ~]# echo $JAVA_HOME
/usr/local/jdk1.8.0_131
1.4 maven解压安装
[root@myhost ~]# cd /home/tools/
[root@myhost tools]# ll
总用量 476972
-rw-r--r--. 1 root root   8534562 3月  12 14:45 apache-maven-3.5.0-bin.tar.gz
-rw-r--r--. 1 root root 359519811 3月  12 14:45 gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
-rw-r--r--. 1 root root 120360708 3月  12 14:45 nexus-3.16.2-01-unix.tar.gz

[root@myhost tools]# tar xf apache-maven-3.5.0-bin.tar.gz 
[root@myhost tools]# ll
总用量 476972
drwxr-xr-x. 6 root root        92 3月  12 15:44 apache-maven-3.5.0
-rw-r--r--. 1 root root   8534562 3月  12 14:45 apache-maven-3.5.0-bin.tar.gz
-rw-r--r--. 1 root root 359519811 3月  12 14:45 gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
-rw-r--r--. 1 root root 120360708 3月  12 14:45 nexus-3.16.2-01-unix.tar.gz
[root@myhost tools]# mv /home/tools/apache-maven-3.5.0 /usr/local/
[root@myhost tools]# cd /usr/local/
[root@myhost local]# ll
总用量 4
drwxr-xr-x. 6 root root   92 3月  12 15:44 apache-maven-3.5.0  #####
drwxr-xr-x. 2 root root    6 8月  12 2015 bin
drwxr-xr-x. 2 root root    6 8月  12 2015 etc
drwxr-xr-x. 2 root root    6 8月  12 2015 games
drwxr-xr-x. 2 root root    6 8月  12 2015 include
drwxr-xr-x. 8 root root 4096 3月  15 2017 jdk1.8.0_131
drwxr-xr-x. 2 root root    6 8月  12 2015 lib
drwxr-xr-x. 2 root root    6 8月  12 2015 lib64
drwxr-xr-x. 2 root root    6 8月  12 2015 libexec
drwxr-xr-x. 2 root root    6 8月  12 2015 sbin
drwxr-xr-x. 5 root root   46 3月  11 16:23 share
drwxr-xr-x. 2 root root    6 8月  12 2015 src
[root@myhost local]# vi /etc/profile
添加maven环境变量:
export MAVEN_HOME=/usr/local/apache-maven-3.5.0
export PATH=${MAVEN_HOME}/bin:${PATH}
[root@myhost local]# source /etc/profile
[root@myhost local]# echo $MAVEN_HOME
/usr/local/apache-maven-3.5.0

二、安装nexus

2.1 nexus软件安装约定
安装包存放目录:/home/tools
nexus 安装目录:/usr/local/nexus
2.2 下载nexus安装包

nexus的官网地址:https://www.sonatype.com/nexus-repository-oss
nexus的相关链接:https://www.sonatype.com/download-oss-sonatype
nexus的官网下载地址:http://download.sonatype.com/nexus/3/nexus-3.16.2-01-unix.tar.gz

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
说明:
[OSS = Open Source Software,开源软件 – 免费]
[FREE TRIAL,专业版本 – 收费]

[root@myhost ~]# cd /home/tools/
[root@myhost ~]# wget http://download.sonatype.com/nexus/3/nexus-3.16.2-01-unix.tar.gz
2.3 解压nexus安装包并进行重命名
[root@myhost tools]# tar xf nexus-3.16.2-01-unix.tar.gz 
[root@myhost tools]# ll
drwxr-xr-x. 9 root root      4096 12月 13 14:11 nexus-3.16.2-01
drwxr-xr-x. 3 root root        19 12月 13 14:11 sonatype-work  #工作目录,这个可以不要,nexus安装启动之后会自动生成;
[root@myhost tools]# mkdir /usr/local/nexus
[root@myhost tools]# mv nexus-3.16.2-01 /usr/local/nexus/
[root@myhost tools]# cd /usr/local/nexus/nexus-3.16.2-01/
[root@myhost nexus]# ll
总用量 76
drwxr-xr-x.  3 root root    69 12月 13 14:00 bin
drwxr-xr-x.  2 root root    25 12月 13 14:00 deploy
drwxr-xr-x.  7 root root    98 12月 13 14:00 etc
drwxr-xr-x.  4 root root  4096 12月 13 14:00 lib
-rw-r--r--.  1 root root   395 5月  31 2019 NOTICE.txt
-rw-r--r--.  1 root root 17321 5月  31 2019 OSS-LICENSE.txt
-rw-r--r--.  1 root root 39222 5月  31 2019 PRO-LICENSE.txt
drwxr-xr-x.  3 root root  4096 12月 13 14:00 public
drwxr-xr-x. 20 root root  4096 12月 13 14:00 system
2.4 虚拟机硬件选项配置(可选)

自定义配置虚拟机,可打开 /usr/local/nexus/nexus-3.16.2-01/bin/nexus.vmoptions虚拟机选项配置文件进行配置,如果Linux硬件配置比较低的话,建议修改为合适的大小,否则会出现运行崩溃的现象。

2.5 启动 nexus
nexus常用的一些命令包括:

[root@myhost bin]# /usr/local/nexus/nexus-3.16.2-01/bin/nexus 
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
Usage: /usr/local/nexus/bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}

nexus启动:

[root@myhost bin]#  /usr/local/nexus/nexus-3.16.2-01/bin/nexus start
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
Starting nexus

查看nexus启动状态:
[root@myhost bin]#  /usr/local/nexus/nexus-3.16.2-01/bin/nexus status
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
nexus is running.

出现上述界面说明已经安装启动成功,上面报错意思是nexus建议不要用root用户来启动nexus,但并不影响启动,如果要去除这个可以自行百度。

2.6 其它说明
  • 1)nexus的web访问的默认端口是8081,可以在/usr/local/nexus/nexus-3.16.2-01/etc/nexus-default.properties配置中修改。
[root@myhost sonatype-work]# cat  /usr/local/nexus/nexus-3.16.2-01/etc/nexus-default.properties
## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties
##
# Jetty section
application-port=8081
application-host=0.0.0.0
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
nexus-context-path=/

# Nexus section
nexus-edition=nexus-pro-edition
nexus-features=\
 nexus-pro-feature
  • 2)nexus默认的用户名密码是admin/admin123。
  • 3)当遇到奇怪问题时,重启nexus,启动时间会比较慢要1分钟左右后才能访问。
  • 4)nexus的工作目录是sonatype-work(路径一般在nexus同级目录下)
    例如:我的nexus安装目录是:/usr/local/nexus/nexus-3.16.2-01/ 那麽:nexus的工作目录是/usr/local/nexus/sonatype-work

三、创建新用户

3.1 访问 http://ip_address:8081/ 会有nexus界面

在这里插入图片描述

3.2 admin用户登陆

进入首页,点击右上角Nexus“Sign in”,输入默认用户名(admin)和默认密码(admin123)登录。
在这里插入图片描述

3.3 创建新用户并登陆

登陆admin后,可以点击上面的“设置”图标,在“设置”里可以添加新用户、角色,对接LDAP等的设置。
在这里插入图片描述
在这里插入图片描述
创建好新用户好后,用创建的新用户重新登陆。
在这里插入图片描述

四、仓库介绍

4.1 四种默认仓库类型介绍
  • 1)maven-central: maven中央仓库,默认从https://repo1.maven.org/maven2/拉取jar包
  • 2)maven-releases: maven私库发行版jar包
  • 3)maven-snapshots: maven私库快照(调试版本)jar包
  • 4)maven-public: 仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用。
    在这里插入图片描述
4.2 nexus默认的三种主要仓库类型

(上面的名字可以随便取,关键是它对应的是什麽仓库类型)

  • 1)group(仓库组类型): 又叫组仓库,用于方便开发人员自己设定的仓库;

  • 2)hosted(宿主类型): 内部项目的发布仓库(内部开发人员,发布上去存放的仓库);

  • 3)proxy(代理类型): 从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage Location属性的值即被代理的远程仓库的路径);

4.3 仓库拉取jar包流程
  • 1)maven可直接从宿主仓库下载构件,也可以从代理仓库下载构件,而代理仓库间接的从远程仓库下载并缓存构件;

  • 2)为了方便,maven可以从仓库组下载构件,而仓库组并没有时间的内容(下图中用虚线表示,它会转向包含的宿主仓库或者代理仓库获得实际构件的内容).

五、创建新仓库

上面对仓库的概率清楚后,我们开始创建新仓库,一般我们要创建的仓库主要有3个:

proxy代理仓库 作用是去远程拉取jar包

hosted宿主仓库 作用是存放本地上传的三方jar包

group仓库组 作用是将上面来个放到这个组里,进行统一管理

5.1 proxy 代理仓库创建

阿里云中央仓库:http://maven.aliyun.com/nexus/content/groups/public/
在这里插入图片描述
在这里插入图片描述

5.2 hosted 宿主仓库创建

在这里插入图片描述
在这里插入图片描述

hosted 宿主仓库这里了三种不同的存储类型。

5.2.1 snapshot快照仓库

在这里插入图片描述

5.2.2 release仓库

在这里插入图片描述

5.2.3 混合仓库

在这里插入图片描述

5.3 group 仓库组创建

主要就是把上面几个仓库放到该组里,然后让这个组给外面访问。
在这里插入图片描述

在这里插入图片描述
最后看一下所有配置都完成之后
在这里插入图片描述
有关在linux服务器上安装nexus搭建maven私服的工作已经完成,接下来就需要配置maven相关配置文件,来测试该仓库的是否成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值