Nexus【部署 01】CentOS 7.5 环境下搭建私有Maven仓库实录(启动问题处理+安装文件 nexus-3.4.0-02-unix.tar.gz 云盘链接)

简介: Nexus【部署 01】CentOS 7.5 环境下搭建私有Maven仓库实录(启动问题处理+安装文件 nexus-3.4.0-02-unix.tar.gz 云盘链接)

1. 为什么要搭建私有Maven仓库

废话少说,只说主要原因,我现在参与的项目各个模块都是以微服务形式进行部署的,包括权限验证模块,我之前参与过一个项目,使用的是自己封装的权限验证 starter 依赖,使用的时候引入依赖即可,前者要进行服务间的数据请求,显然是后者更好。

将 starter 打成 jar 包然后引入项目也是可行的,这样显然不够优雅(版本升级麻烦),另一种方式就是搭建一个内部的maven仓库,引入简单还能保证库的私密性。

2. 准备

首先是下载安装文件,官网 当前最新版是 nexus-3.35.0-02-unix.tar.gz 速度很慢 🐌 这里分享一下老版本 nexus-3.4.0-02-unix.tar.gz 以下内容也是根据此文件进行说明。

链接:https://pan.baidu.com/s/1S6JCDSbtnFreOHZfmj-F3Q

提取码:who9

需要Java运行环境,我当前使用的是OpenJDK11【有坑预警】:

[root@aliyun ~]# java -version
openjdk version "11" 2018-09-25
OpenJDK Runtime Environment 18.9 (build 11+28)
OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)

3. 安装、配置、启动

3.1 安装

# 解压安装文件
tar -zxvf nexus-3.4.0-02-unix.tar.gz
# 将解压出来的两个文件夹 移动到 /usr/local/nexus/ 下【位置随意】
mv ./nexus-3.4.0-02/ /usr/local/nexus/
mv ./sonatype-work/ /usr/local/sonatype-work/

3.2 配置

1️⃣ 配置环境变量的方法比较多,这里统一将环境变量放在 /etc/profile.d/my_env.sh 内:

# 配置环境变量:
vim /etc/profile.d/my_env.sh
# 添加 NEXUS_HOME 及 bin
export NEXUS_HOME=/usr/local/nexus
export PATH=$PATH:$NEXUS_HOME/bin
# 使得配置的环境变量立即生效:
  # 首先是要赋权限【只操作一次就行】
  chmod +x /etc/profile.d/my_env.sh
source /etc/profile.d/my_env.sh

2️⃣ 修改 $NEXUS_HOME/bin/nexus.rc 文件,将 run_as_user 配置放开,Nexus 跟很多 Linux 应用一样不推荐使用 root 用户,我们可以暂用:

# 释放并修改 run_as_user
vim /usr/local/nexus/bin/nexus.rc
  run_as_user="root"

3️⃣ 修改 $NEXUS_HOME/etc/nexus-default.properties 的 IP 和端口:

# 修改 nexus-default.properties 的 host 和 port
vim /usr/local/nexus/etc/nexus-default.properties 
  # Jetty section
  application-port=8087
  application-host=tcloud

4️⃣ 添加到系统服务:

ln -s $NEXUS_HOME/bin/nexus /etc/init.d/nexus

3.3 启动

# 后台启动
[root@aliyun ~]# service nexus start
No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be at least 1.8 and at most 1.8.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.
# 使用最新版本 nexus-3.35.0-02-unix.tar.gz 启动时依然报一下信息
[root@aliyun ~]# service nexus start
No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be 1.8.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.

The version of the JVM must be at least 1.8 and at most 1.8.这意思不就是要用 JDK1.8 嘛 😅 换用最新版本的 nexus-3.35.0-02-unix.tar.gz 启动时报:The version of the JVM must be 1.8. 实锤了,需要使用JDK1.8 😅

4. 换服务器重新安装配置启动

# 换另一台云服务器 JDK为1.8
[root@tcloud ~]# java -version
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

在新服务器上的安装过程跟前边的一样,这里省略了:

# 【再次启动】这次用前台启动 可以看日志
[root@tcloud ~]# service nexus run
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
Starting nexus
# 省略部分日志信息【这样就是启动成功了】
-------------------------------------------------
Started Sonatype Nexus OSS 3.4.0-02
-------------------------------------------------

❗️❗️❗️【注意】

启动成功 后的运行日志文件为 /sonatype-work/nexus3/log/nexus.log

启动失败 的日志文件为 $NEXUS_HOME/nexus/hs_err_pidxxxx.log

5. 验证

默认端口是:8081,我修改成了8087,默认用户名是:admin,密码:admin123。登录前只可以查看仓库信息:

登录后才可以进行设置,比如添加代理源:

Browse 可以查看当前有多少仓库,搭建好的 Nexus,默认会带有一些maven仓库,一般使用这些仓库就足够了,当然了,我们为的不是这些,而是上传自己的依赖。

默认仓库说明【我们可以在设置->仓库里查看详情】:

  • maven-central:maven中央库,默认从 https://repo1.maven.org/maven2/ 拉取Jar包。
  • maven-releases:私库发行版Jar,初次安装请将Deployment policy设置为Allow redeploy。
  • maven-snapshots:私库快照(调试版本)Jar
  • maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml 或项目 pom.xml 中使用。

仓库类型:

  • Group:这是一个仓库聚合的概念,用户仓库地址选择Group的地址,即可访问Group中配置的,用于方便开发人员自己设定的仓库。maven-public就是一个Group类型的仓库,内部设置了多个仓库,访问顺序取决于配置顺序,3.x默认Releases,Snapshots, Central,当然你也可以自己设置。
  • Hosted:私有仓库,内部项目的发布仓库,专门用来存储我们自己生成的Jar文件。
  • 3rd party:未发布到公网的第三方jar (3.x去除了)。
  • Snapshots:本地项目的快照仓库。
  • Releases: 本地项目发布的正式版本。
  • Proxy:代理类型,从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage属性的值即被代理的远程仓库的路径),如可配置阿里云maven仓库。
  • Central:中央仓库。
  • Apache Snapshots:Apache专用快照仓库(3.x去除了)。

6. 总结

Nexus 的安装配置并不复杂,随后会写如何使用,感谢支持~

目录
相关文章
|
2月前
|
监控 前端开发 Linux
centos7系统安装部署zabbix5.0
【9月更文挑战第23天】在CentOS 7系统上部署Zabbix 5.0的步骤包括:安装MariaDB数据库及必要软件包,配置Zabbix仓库,设置数据库并导入Zabbix数据库架构,配置Zabbix服务器与前端参数,启动相关服务,并通过浏览器访问Web界面完成安装向导。
135 0
|
2月前
|
Oracle Java 关系型数据库
CentOS 7.6操作系统部署JDK实战案例
这篇文章介绍了在CentOS 7.6操作系统上通过多种方式部署JDK的详细步骤,包括使用yum安装openjdk、基于rpm包和二进制包安装Oracle JDK,并提供了配置环境变量的方法。
265 80
|
1月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
118 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
1月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
97 1
|
1月前
|
XML 安全 Java
【Maven】依赖管理,Maven仓库,Maven核心功能
【Maven】依赖管理,Maven仓库,Maven核心功能
501 3
|
1月前
|
存储 Linux 开发者
虚拟机centos7.9一键部署docker
本文介绍了如何在 CentOS 7.9 虚拟机上安装 Docker 社区版 (Docker-ce-20.10.20)。通过使用阿里云镜像源,利用 `wget` 下载并配置 Docker-ce 的 YUM 仓库文件,然后通过 `yum` 命令完成安装。安装后,通过 `systemctl` 设置 Docker 开机自启并启动 Docker 服务。最后,使用 `docker version` 验证安装成功,并展示了客户端与服务器的版本信息。文中还提供了列出所有可用 Docker-ce 版本的命令。
166 0
虚拟机centos7.9一键部署docker
|
2月前
|
存储 Kubernetes 负载均衡
CentOS 7.9二进制部署K8S 1.28.3+集群实战
本文详细介绍了在CentOS 7.9上通过二进制方式部署Kubernetes 1.28.3+集群的全过程,包括环境准备、组件安装、证书生成、高可用配置以及网络插件部署等关键步骤。
404 3
CentOS 7.9二进制部署K8S 1.28.3+集群实战
|
2月前
|
Linux pouch 容器
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
关于如何在CentOS 7.6操作系统上安装和使用阿里巴巴开源的Pouch容器管理工具的实战教程。
120 2
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
|
2月前
|
Kubernetes Linux API
CentOS 7.6使用kubeadm部署k8s 1.17.2测试集群实战篇
该博客文章详细介绍了在CentOS 7.6操作系统上使用kubeadm工具部署kubernetes 1.17.2版本的测试集群的过程,包括主机环境准备、安装Docker、配置kubelet、初始化集群、添加节点、部署网络插件以及配置k8s node节点管理api server服务器。
116 0
CentOS 7.6使用kubeadm部署k8s 1.17.2测试集群实战篇
|
3月前
|
Linux 数据安全/隐私保护 网络虚拟化
centos7部署Pritunl
centos7部署Pritunl