Linux下Maven私服Nexus3.x环境构建操作记录
原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79553747
私服介绍
私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建。有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。

Nexus介绍
Nexus是一个强大的Maven仓库管理器,它极大地简化了本地内部仓库的维护和外部仓库的访问。如果使用了公共的Maven仓库服务器,可以从Maven中央仓库下载所需要的构件(Artifact),但这通常不是一个好的做法。正常做法是在本地架设一个Maven仓库服务器,即利用Nexus私服可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。
- Nexus在代理远程仓库的同时维护本地仓库,以降低中央仓库的负荷,节省外网带宽和时间,Nexus私服就可以满足这样的需要。
- Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。
- Nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过m2eclipse与Eclipse集成使用。
- Nexus支持WebDAV与LDAP安全身份认证。
- Nexus还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。
为什么要构建Nexus私服?
如果没有Nexus私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响项目的进程。很多情况下项目的开发都是在内网进行的,连接不到maven仓库怎么办呢?开发的公共构件怎么让其它项目使用?这个时候我们不得不为自己的团队搭建属于自己的maven私服,这样既节省了网络带宽也会加速项目搭建的进程,当然前提条件就是你的私服中拥有项目所需的所有构件。
总之,在本地构建nexus私服的好处有:
- 加速构建;
- 节省带宽;
- 节省中央maven仓库的带宽;
- 稳定(应付一旦中央服务器出问题的情况);
- 控制和审计;
- 能够部署第三方构件;
- 可以建立本地内部仓库;
- 可以建立公共仓库
这些优点使得Nexus日趋成为最流行的Maven仓库管理器。
Nexus安装
请先安装:JDK 和 Maven。可以参考:JDK安装(tar.gz)、Linux 下 Maven 的安装
Nexus的安装有两种实现方式:
1)war包安装方式
下载地址:https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.14.2-01.war
直接将war包放在tomcat的根目录下,启动tomcat就可以用了
2)源码安装方式
下载地址:https://www.sonatype.com/download-oss-sonatype
[root@peipei3514 /]# cd /usr/local/src/
# 下载nexus
[root@peipei3514 src]# wget https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.9.0-01-unix.tar.gz # 解压到指定目录
[root@peipei3514 src]# tar -zvxf nexus-3.9.0-01-unix.tar.gz -C /usr/local/nexus-3.9.0-01/ # 启动nexus
[root@peipei3514 src]# /usr/local/nexus-3.9.0-01/nexus-3.9.0-01/bin/nexus start
启动后控制台的输出:
WARNING: ************************************************************
WARNING: Detected execution as "root" user. This is NOT recommended!
WARNING: ************************************************************
Starting nexus
上面在启动过程中出现告警:不推荐使用root用户启动。这个告警不影响 nexus 的正常访问和使用。
# nexus服务启动成功后,需要等好长一段时间,8081端口才起来
[root@peipei3514 src]# lsof -i:8081
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 1979 root 766u IPv4 26972 0t0 TCP *:tproxy (LISTEN)
java 1979 root 770u IPv4 26974 0t0 TCP peipei3514:tproxy->192.168.1.1:54767 (ESTABLISHED)
java 1979 root 771u IPv4 27418 0t0 TCP peipei3514:tproxy->192.168.1.1:54768 (ESTABLISHED)
java 1979 root 772u IPv4 27419 0t0 TCP peipei3514:tproxy->192.168.1.1:54783 (ESTABLISHED)
java 1979 root 773u IPv4 27420 0t0 TCP peipei3514:tproxy->192.168.1.1:54784 (ESTABLISHED)
java 1979 root 774u IPv4 27421 0t0 TCP peipei3514:tproxy->192.168.1.1:54785 (ESTABLISHED)
java 1979 root 775u IPv4 27422 0t0 TCP peipei3514:tproxy->192.168.1.1:54786 (ESTABLISHED)
访问 nexus:http://192.168.1.128:8081/

出现上述页面,说明配置nexus成功!点击右上角“Log in”,输入默认用户名(admin)和默认密码(admin123)登录。
Linux下Maven私服Nexus3.x环境构建操作记录的更多相关文章
- Linux下Maven私服Nexus3.x环境构建操作记录【转】
Maven介绍Apache Maven是一个创新的软件项目管理和综合工具.Maven提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文件.Ma ...
- Maven私服Nexus3.x环境构建操作记录
Maven介绍Apache Maven是一个创新的软件项目管理和综合工具.Maven提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文件.Ma ...
- Linux下磁盘分区、挂载、卸载操作记录
Linux下磁盘分区.挂载.卸载操作记录. 操作环境:CentOS release 6.5 (Final) Last :: from 118.230.194.76 [root@CentOS ~]# [ ...
- Maven与Nexus3.x环境构建详解
一.Maven介绍Apache Maven是一个创新的软件项目管理和综合工具.Maven提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文件. ...
- linux下拷贝命令中的文件过滤操作记录
在日常的运维工作中,经常会涉及到在拷贝某个目录时要排查其中的某些文件.废话不多说,下面对这一需求的操作做一记录: linux系统中,假设要想将目录A中的文件复制到目录B中,并且复制时过滤掉源目录A中的 ...
- Linux下对文件进行加密备份的操作记录
由于公司之前在阿里云上购买了一些机器,后续IDC建设好后,又将线上业务从阿里云上迁移到IDC机器上了,为了不浪费阿里云上的这几台机器资源,打算将这些机器做成IP SAN共享存储,然后作为IDC数据的一 ...
- maven私服nexus3.9安装配置
maven私服nexus3.9安装配置 私服介绍 私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建.有了私服之后,当 Maven 需要下载构件时,直接请求私服 ...
- Linux学习心得之 Linux下命令行Android开发环境的搭建
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...
- linux下查看和添加PATH环境变量
linux下查看和添加PATH环境变量 $PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接. 编辑你的 PA ...
随机推荐
- 关于PHP在企业级开发领域的访谈
企业软件的一个关键元素就是互操作性,它可以让软件与其他平台交换信息.大家都认为PHP在这方面表现欠佳,因为它的WS-*支持相对来说比较新且功能较少,成熟度不高.关于这点我们从未手动开启过PHP的相关进 ...
- iframe子元素无法全屏
最近做的项目中遇到的问题: 在最新的Chrome浏览器中,全屏功能正常 在旧版本Chrome浏览器中(与最新版版本号相差二十左右),全屏功能无效 在IE11浏览器中,全屏功能无效 反复排查,发现该项目 ...
- 「白帽黑客成长记」Windows提权基本原理(上)
我们通常认为配置得当的Windows是安全的,事实真的是这样吗?今天让我们跟随本文作者一起深入了解Windows操作系统的黑暗角落,看看是否能得到SYSTEM权限. 作者将使用不同版本的Windows ...
- Scrum 冲刺第五篇
我们是这次稳了队,队员分别是温治乾.莫少政.黄思扬.余泽端.江海灵 一.会议 1.1 29号站立式会议照片: 1.2 昨天已完成的事情 团队成员 昨日计划完成的工作: 黄思扬 活动管理模块(前端) ...
- Web Service 接口测试
Web Service 接口测试 Web service 概念 Web service使用与平台和编程语言无关的方式进行通讯的一项技术, web service 是一个接口, 他描述了一组可以在网络上 ...
- pycharm 配置使用 flake8 进行语法检测
打开 PyCharm 在 Terminal 处输入 pip install flake8 在 File ->Settings ->Tools->External Tools 添加一个 ...
- springcloud学习之路: (五) springcloud集成SpringCloudConfig分布式配置中心
SpringCloud全家桶中的分布式配置中心SpringCloudConfig, 它使用git来管理配置文件, 在修改配置文件后只需要调用一个接口就可以让新配置生效, 非常方便. SpringClo ...
- py2,py3区别 ,基础网络常识,多线程,
1.编译型:把代码编译成机器码,计算机找虚拟机执行代码,机器码交给计算技巧去运行 :C语言,java c# 解释型:边解释边执行 5.只有列表才能reverse 字符串需要索引[::-1] 6.py2 ...
- JS高阶---instanceof
一句话: .
- CF1045B Space Isaac
原题链接 DOWNLOAD AS PDF 题目大意 \(0\sim m-1\)的数被分成两个集合,你可以分别从两个集合中取一个数相加并对\(m\)取模,求一不能构造出的数. 题解 感觉如果\(\col ...