一、Nexus介绍
Nexus是Maven仓库管理器,也可以叫Maven的私服。Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。
Nexus不是Maven的核心概念,它仅仅是一种衍生出来的特殊的Maven仓库。对于Maven来说,仓库只有两种:本地仓库和远程仓库。
Nexus Repository 是以 Java 和 JavaScript 为主,实现的一个包含前端与后台的 Web
另外,它也通过 Resteasy 支持 REST API,可以通过网络进行访问控制。 并且,自行实现了一个插件系统,用插件的方式支持了更多复杂的功能。
比如,Maven、PyPI、Docker
这些支持,
二、Nexus下载
官网地址:https://www.sonatype.com/
下载地址:https://help.sonatype.com/repomanager3/download

- 同时我们也需要安装JDK,点击这里下载Oracle JDK
- 如果Nexus下载不下来,请通过我提供的网盘地址进行下载,版本为3.21.1
三、Nex文章来源(Source):https://www.dqzboy.com us安装
1、安装JDK
[root@nexus ~]# mkdir -p /opt/soft/ #存储软件包
[root@nexus ~]# cd /opt/soft/
#安装JDK
[root@nexus soft]# rpm -ivh jdk-8u231-linux-x64.rpm
2、安装Nexus
[root@nexus soft]# mkdir /usr/local/nexus
[root@nexus soft]# tar -zxvf latest-unix.tar.gz -C /usr/local/nexus/
3、启动Nexus
[root@nexus soft]# cd /usr/local/nexus/
- 解压后会有2个文件夹第一个文件夹是核心文件,第二个文件夹用来存储下载下来的jar

- 修改端口,默认端口为8081
[root@nexus nexus]# cd nexus-3.21.1-01/
[root@nexus nexus-3.21.1-01]# cd etc/
[root@nexus etc]# vim nexus-default.properties

- 启动服务
[root@nexus etc]# cd ../bin/
[root@nexus bin]# ./nexus start

- 启动比较慢;如果启动失败请查看日志
- /usr/local/nexus/sonatype-work/nexus3/log/nexus.log

4、配置防火墙
- 默认访问端口8081,上面已经改成了8090,这里防火墙需要放通8090端口
[root@nexus bin]# lsof -i:8090
[root@nexus bin]# firewall-cmd --permanent --zone=public --add-port=8090/tcp
[root@nexus bin]# firewall-cmd –reload
5、访问Nexus
- 至此Nexus已经安装部署完成
6、设置系统服务
- 现在我们将Nexus服务由Systemd进行管理
[root@nexus ~]# cd /etc/systemd/system
[root@nexus system]# vim nexus.service
[Unit]
Description=nexus service
After=network.target
[Service]
Type=forking
LimitNOFILE=65536
ExecStart=/usr/local/nexus/nexus-3.21.1-01/bin/nexus start
ExecStop=/usr/local/nexus/nexus-3.21.1-01/bin/nexus stop
User=root
Restart=on-abort
[Install]
WantedBy=multi-user.target
- 停止命令行启动的Nexus,通过systemd启动
[root@nexus system]# /usr/local/nexus/nexus-3.21.1-01/bin/nexus stop
- 通过systemd启动
[root@nexus system]# systemctl daemon-reload
[root@nexus system]# systemctl start nexus
[root@nexus system]# systemctl enable nexus
[root@nexus system]# systemctl status nexus
- 等待一会Nexus完全启动后,浏览器查看Nexus访问页面
四、Docker环境部署Nexus
- 上面通过传统方式安装的nexus,先停止
[root@nexus ~]# systemctl stop nexus
[root@nexus ~]# systemctl disable nexus
1、安装Docker
[root@nexus ~]# wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
[root@nexus ~]# vim /etc/yum.repos.d/docker-ce.repo
%s@https://download.docker.com/@https://mirrors.tuna.tsinghua.edu.cn/docker-ce/@
[root@nexus ~]# yum repolist
[root@nexus ~]# yum -y install docker-ce
[root@nexus ~]# docker –version
Docker version 19.03.8, build afacb8b
2、配置镜像加速
[root@nexus ~]# mkdir /etc/docker
[root@nexus ~]# vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://9p593175.mirror.aliyuncs.com"]
}
3、启动Docker
[root@nexus ~]# systemctl start docker
[root@nexus ~]# systemctl enable docker
[root@nexus ~]# systemctl status docker
4、安装Docker-compose
[root@nexus ~]# curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
[root@nexus ~]# chmod +x /usr/local/bin/docker-compose
[root@nexus ~]# docker-compose -version
docker-compose version 1.25.4, build 8d51620a
5、通过docker-compose启动nexus容器
5.1:创建yaml文件
#创建docker-compose.yaml文件
[root@nexus ~]# mkdir /usr/local/docker
[root@nexus ~]# cd /usr/local/docker
[root@nexus docker]# vi docker-compose.yaml
version: "2"
services:
nexus:
restart: "no"
image: sonatype/nexus3
container_name: nexus
ports:
- 8090:8081
volumes:
- /usr/local/nexus:/nexus-data
#注意:yaml文件缩进必须用空格
参数说明:
- version: 指定docker-compose语法版本,版本不同,支持的docker也不同
- services: 多种服务的根节点
- nexus: 服务名随意起,代表要创建的服务
- restart: 容器的重启策略,有no、always、on-failure、unless-stopped四种可选值。
- image: 容器依据的镜像
- container_name: 容器名
- ports: 端口;这里8090为虚机端口映射至nexus容器的8081端口
- volumes: 数据卷; 指定数据卷,防止每次启动容器,容器里的数据丢失,实现容器和虚拟机数据
原文链接:https://www.dqzboy.com 共享。
5.2:创建数据卷
- 上面yaml指定了数据卷,我们需要在虚拟机上创建对应的目录
[root@nexus docker]# mkdir /usr/local/nexus
#给目录赋予权限
[root@nexus docker]# chmod 777 /usr/local/nexus
5.3:启动Nexus容器
[root@nexus docker]# docker-compose up -d

[root@nexus docker]# docker ps
6、访问Nexus
#启动会比较慢,可以登入到容器中,查看nexus日志
[root@nexus docker]# docker exec -it 1a9ec41f4be7 /bin/bash
bash-4.4$ cd /nexus-data/
bash-4.4$ cd log/
bash-4.4$ tail -f nexus.log






按照教程搭建配置好了