nexus 部署及配置代理

nexus 官网

安装

[root@nexus ~]# tar xvzf nexus-3.62.0-01-unix.tar.gz -C /usr/local/
[root@nexus ~]# mv /usr/local/nexus-3.62.0-01/ /usr/local/nexus

注意:默认账户admin 密码在:/usr/local/sonatype-work/nexus3/admin.password(此路径是我指定安装的目录具体使用find查找sonatype-work目录在哪就行

下载jdk1.8上传至服务器并解压配置环境变量

[root@nexus ~]# tar xvzf jdk-8u211-linux-x64.tar.gz -C /usr/local/
[root@nexus ~]# mv /usr/local/jdk1.8.0_211/ /usr/local/java
[root@nexus ~]# echo "export PATH=/usr/local/java/bin:$PATH" >> /etc/profile
[root@nexus ~]# source /etc/profile
[root@nexus ~]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

启动
[root@nexus ~]# cd /usr/local/nexus/bin
[root@nexust bin]# ./nexus run # 前台启动 Nexus,查看日志
# 也可以通过start后台启动

nexus 数据备份

设置=> system[tasks] => create task

image.png

Admin-export 导出数据备份

image.png
image.png

创建一个内网yum源

创建一个存储库 Blob(Binary Large Object)是一种二进制大对象,通常用于存储图像、音频、视频等大型文件。Blob Stores 是一种用于存储和管理 Blob 的数据存储服务,通常由云服务提供商提供。

image.png
image.png

创建一个Repositories 仓库

image.png

创建仓库类型为yum Nexus 仓库类型包括 Group、Hosted 和 Proxy。 Group(组仓库):用于组织其他仓库,它本身不存储任何软件包。Group 仓库可以包含其他类型的仓库,例如 Hosted 或 Proxy 仓库,以方便管理和访问。 Hosted(宿主仓库):用于存储自己构建或上传的软件包。Hosted 仓库通常用于内部开发团队共享软件包,或者用于存储私有软件包。 Proxy(代理仓库):用于代理其他公共仓库的软件包。Proxy 仓库可以缓存公共仓库中的软件包,以提高下载速度和节省带宽。Proxy 仓库还可以用于管理和控制对公共仓库的访问。

image.png

找到仓库并拷贝路径

测试上传包

#仓库地址: http://192.168.87.130:8081/repository/yum/
# 如果你想上传本地缓存的包,可以通过下列命令进行上传
# 注意,这里的admin前边是账号,后边admin指的是nexus的账号密码,可以根据不同的权限进行创建
[root@nexus nexus3]# find /var/cache/yum/ -name "*.rpm" -exec curl -v --user 'admin:admin' --upload-file {} http://192.168.87.130:8081/repository/yum/{} \;

centos7开启yum缓存的方法(开启yum缓存,可以把rpm包留下来做本地源)

[root@nexus nexus3]# vim /etc/yum.conf 
#在其中[main]段设置keepcache=1

验证是否成功上传

尝试使用仓库(使用的其他服务器)

[root@sonarqube ~]# cd /etc/yum.repos.d/
[root@sonarqube yum.repos.d]# vim nexus-yum.repo
[nexus-yum]
name=nexus-yum
baseurl=http://192.168.87.130:8081/repository/yum
gpgcheck=0
enabled=1

创建一个代理yum仓库

设置名称、设置被代理的远程存储库的位置(这里我使用的阿里云)

选择yum

[root@sonarqube ~]# cd /etc/yum.repos.d/
[root@sonarqube yum.repos.d]# vim nexus-yum.repo
[nexus-yum]
name=nexus-yum
baseurl=http://192.168.87.130:8081/repository/aliyun-centos7/$releasever/os/$basearch/
gpgcheck=0
enabled=1

这时,我们可以看到,已经将阿里云的软件包进行了代理,并且,当我们进行了下载时

我们可以看到,包已经缓存了下来