Maven学习—Nexus3私服搭建
一、Nexus搭建环境
环境:CentOS 7.4、JDK8、Sonatype Nenux、Maven
二、搭建步骤
1、配置JDK环境变量
解压JDK安装包,修改 vi /etc/profile
配置文件,增加环境变量配置。修改完,保存后执行source /etc/profile
命令,让新修改的环境变量生效。
JAVA_HOME=/usr/local/java/jdk1.8.0_181;
PATH=$JAVA_HOME/bin:/bin:$PATH;
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar;
二、安装私服Nexus
1、Nexus资源包下载
Nexus官方下载地址:https://www.sonatype.com/download-oss-sonatype
Nexus官方文档地址:https://www.sonatype.com/oss-thank-you-tar.gz
参考链接地址:https://cloud.tencent.com/developer/article/1336556
上面第3个参考链接,对
为项目分配独立的仓库
有误,权限类型选择错误。
参考这部分权限类型:本地私服仓库nexus3.3.1使用手册 - 云+社区 - 腾讯云
2、Nexus 资源包解压
2.1、在 /usr/local
目录中创建子目录 nexus
mdkir /usr/local/nexus
2.2、解压Nexus到指定目录
tar -zxvf nexus-3.13.0-01-unix.tar.gz -C /usr/local/nexus
- Nexus 目录结构
- Nexus 各个目录结构说明
目录名称 |
目录说明 |
---|---|
bin | 包含nexus的启动脚本以及启动相关的配置文件,例如通过bin/nexus.vmoptions文件,你可以配置一些JVM参数和日志存放位置等配置 |
etc | 包含应用级别的配置文件 |
lib | 包含 Apache Karaf 相关的jar包 |
public | 包含应用相关的公共资源 |
system | 包含应用相关的构件和插件 |
2.3、检查私服端口和工作目录
在nexus-3.13.0-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
Nexus 运行配置文件 nexus-3.13.0-01/bin/nexus.vmoptions
特别注意,nexus3 解压出来没有
sonatype-work
,运行后创建。如果没有创建,手动nexus-3.13.0-01
平级创一个目录sonatype-work
-Xms1200M
-Xmx1200M
-XX:MaxDirectMemorySize=2G
-XX:+UnlockDiagnosticVMOptions
-XX:+UnsyncloadClass
-XX:+LogVMOutput
-XX:LogFile=../sonatype-work/nexus3/log/jvm.log
-XX:-OmitStackTraceInFastThrow
-Djava.net.preferIPv4Stack=true
-Dkaraf.home=.
-Dkaraf.base=.
-Dkaraf.etc=etc/karaf
-Djava.util.logging.config.file=etc/karaf/java.util.logging.properties
-Dkaraf.data=../sonatype-work/nexus3
-Djava.io.tmpdir=../sonatype-work/nexus3/tmp
-Dkaraf.startLocalConsole=false
2.4、修改Nexus运行用户
Nexus私服启动后,私服应用需要访问Linux的文件系统,所以需要有足够的权限。Nexus的启动脚本文件中,可以指定应用的访问用户,此信息在nexus-3.13.0-01/bin/nexus.rc
配置文件中定义。需修改如下信息:
run_as_user="nexus" # 修改后的内容,代表Nexus私服使用nexus用户权限
一般不建议使用root用户权限启动,可以新建一个nexus用户,启动Nexus。
2.5、修改防火墙,开放Nexus私服端口访问
修改防火墙配置文件,开放Nexus私服的访问端口 8081
vi /etc/sysconfig/iptables # 注意centOS系统环境
增加如下配置:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8081 -j ACCEPT
iptables status # 查看端口状态
service iptables restart # 重启防火墙
阿里云服务器,需要在阿里云管理后台,设置服务器的端口规则。不在iptables中限制端口的访问
2.6、启动并测试访问
启动Nexus私服
`/usr/local/nexus-3.13.0-01/bin/nexus start`
- 启动成功日志
- 常用的命令
nexus start # 启动
nexus stop # 停止
nexus status # 查看状态
nexus restart # 重启
启动成功访问:http://[你的IP]:8081
2.7、问题汇总
- 可以指定JDK的版本
修改$NEXUS_HOME/bin/nexus# 这一行是注释的,释放掉,后面写JAVA_HOME的路径
INSTALL4J_JAVA_HOME_OVERRIDE=${填写你的JDK版本}
- nexus - nofile 65536 文件警告
官方参考链接:https://help.sonatype.com/repomanager3/system-requirements#filehandles
修改生效参考链接:重新登录,vim /etc/security/limits.conf 生效_王树民的博客-CSDN博客_/etc/security/limits.conf 生效
修改 /etc/security/limits.conf
,在文件中增加下面语句,重新登录用户,重启Nexus生效。
nexus - nofile 65536
三、阿里云服务外网域名访问
阿里云服务器配置外网域名可以访问,配置域名解析,通过Nginx配置访问nexus服务。
1、添加阿里云域名解析,如 nexus.[你的域名]
为例。
2、配置阿里云服务器的Nginx配置文件
server {listen 80;server_name nexus.[你的域名];charset utf-8;access_log logs/nexus_access.log main;include proxy.conf;location / {proxy_pass http://127.0.0.1:8081;}location ~ ^/(WEB-INF)/ {deny all;}location ~ \.(php|asp|aspx) {deny all;}}
其中 proxy.conf
的内容为
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header RealIP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;client_max_body_size 100m;
proxy_connect_timeout 3s;
proxy_send_timeout 1m;
proxy_read_timeout 1m;
proxy_temp_file_write_size 1024m;
proxy_buffer_size 32k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_ignore_client_abort on;
proxy_next_upstream error timeout invalid_header http_503;
2、配置好,Nginx重新reload下,使配置生效。
3、通过域名测试访问是否生效。
特别注意:nexus3 的访问域名为:
http://nexus.[你的域名]
Maven学习—Nexus3私服搭建相关推荐
- Maven Nexus3 私服搭建、配置、项目发布(docker方式)
maven nexus私服搭建 访问nexus3官方镜像库,选择需要的版本下载:Docker Nexus docker pull sonatype/nexus3:3.49.0 创建数据目录并赋权 su ...
- Maven基础与私服搭建
Blog诞生记 Android studio构建项目有时候build.gradld构建缓慢,严重影响了开发心情,这仅是次要因素,最重要的是leader为了考虑团队发展,建议搭建Maven私服,把项目模 ...
- 【Centos7内网环境Nexus3私服搭建】
1.使用背景 在项目开发的过程中,我们通常在内部网络进行开发,在内网环境开发中我们经常遇到 Maven包.Npm包.Yum镜像.Docker镜像等无法联网下载问题,当然这些问题也可以通过离线安装的方式 ...
- Maven学习 使用Nexus搭建Maven私服(转)
为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到 ...
- Maven学习-使用Nexus搭建Maven私服
为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到 ...
- Maven学习使用Nexus搭建Maven私服
原文:http://www.cnblogs.com/quanyongan/archive/2013/04/24/3037589.html 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给 ...
- nexus3私服搭建
应用场景 maven库分为本地仓库和远程仓库(包括私服和中央仓库).公司自己设立,只为公司内部共享使用,同时减少外部访问和下载频率等. 使用Nexus搭建私服 下载 官网链接:https://www. ...
- Maven学习总结(九)——使用Nexus搭建Maven私服
2019独角兽企业重金招聘Python工程师标准>>> Maven学习总结(九)--使用Nexus搭建Maven私服 一.搭建nexus私服的目的 为什么要搭建nexus私服,原因很 ...
- windows下使用nexus3.x搭建maven私服
写在前面 本文描述了在windows下如何使用nexus3.x搭建maven私服,文章可能还有很多不足,请大家谅解,欢迎大佬提意见. 本文使用到的东西 nexus win10 文章目录 写在前面 本文 ...
- maven 学习笔记--仓库,聚合和继承,私服搭建
仓库 http://blog.csdn.net/wanghantong/article/details/36427433 聚合和继承 http://www.cnblogs.com/xdp-gacl/p ...
最新文章
- 好渴望 wacom Intuos3
- 通过数据挖掘组织营销潜力的三个重要途径
- 2021年高薪城市排名,数据盘点哪些城市对打工人最友好?
- 三朵云 华为_携手共进,华为云推出“Go Africa”计划
- 每周一起读 | ACL 2019 NAACL 2019:文本关系抽取专题沙龙
- NIOS生成Nios libaray
- Linux下查看文件内容的ASCII码以检查内容的编码一致
- 【渝粤题库】陕西师范大学200411 数学建模 作业(专升本)
- 【数据结构与算法】顺序表V3.0的Java实现
- 淘宝内核月报 2017
- 按钮控制android progressbar,Android ProgressBar手动控制开始和停止
- 在ASP.NET中加密页面机制
- 对话海星区块创始团队,打造区块链媒体明日之星
- 用spss进行数据的标准化处理_用spss怎样对数据进行标准化
- 实验2 格式化输入输出和分支语句
- C++笔记-学习算法与实现-计算几何-二维向量和线段运算
- vivo Y76s参数配置
- 文章总结:ASPLOS 2013 Architecture I
- 《headfirst设计模式》读书笔记9-迭代器和组合模式
- tikz 折线 箭头_4. TikZ画箭头、网格、圆、点、椭圆、圆弧
热门文章
- (全角→半角)把文字从PDF复制到Word,发现很宽但又不是多出空格?
- ffmpeg添加到环境变量_Windows 10系统下安装FFmpeg教程详解
- oc实时渲染的图如何导出_最新C4D渲染器全家桶随便用,不仅有OC+阿诺德,还有两款哦...
- 收藏 | 应急响应的基本流程
- win7桌面工具无法连接服务器,小编为你讲讲win7系统桌面天气小工具提示无法连接服务的解决方案...
- C语言中字符串转数字的方法
- WinHex18.4算法分析
- 第一章 Android Framework 基础认知
- 数据结构(郝斌老师)
- 使用JavaScript实现纯前端读取excel文件并与后台进行交互