一、安装Nexus3
Nexus3是Sonatype提供的仓库管理平台,Nuexus Repository OSS3能够支持Maven、npm、Docker、YUM、Helm等格式数据的存储和发布;并且能够与Jekins、SonaQube和Eclipse等工具进行集成。Nexus3支持作为宿主和代理存储库的Docker存储库,可以直接将这些存储库暴露给客户端工具;也可以以存储库组的方式暴露给客户端工具,存储库组是合并了多个存储库的内容的存储库,能够通过一个URL将多个存储库暴露给客户端工具,从而便于用户的使用。通过nexus3自建能够有效减少访问获取镜像的时间和对带宽使用,并能够通过自有的镜像仓库共享企业自己的镜像。在本文中,采用Docker模式安装部署Nexus3。
首先,创建一个目录,用于为Nexus3提供持久化存储。
mkdir -p /opt/docker-data/nexus-data && chown -R 200 /opt/docker-data/nexus-data
docker run -d -p 8081:8081 -p 8082:8082 --restart=always --name nexus -v /opt/docker-data/nexus-data:/nexus-data sonatype/nexus3
浏览器测试访问:
http://192.168.8.31:8081/
进入docker输入一下指令,获取密码
[root@nexus3 ~]# docker exec -it 70 /bin/bash bash-4.4$ cat /nexus-data/admin.password 297116d8-0d83-457e-91a9-a7904af7ed46bash-4.4$ # 这里拿到密码
允许匿名下载,选择第一个
验证默认仓库:
二、设置存储的位置
三、使用nexus构建私有yum仓库
案例一:
3.1. nesux仓库配置
这里以zabbix-agent为例子
3.2. 添加以下官方rpm地址:
https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/
当我们下载如果仓库中没有,就会请求我们指定的这个官方的地址
如何使用?
准备一台centos7,将地址指向仓库
3.3. 测试
[root@nexus3 yum.repos.d]# cat zabbix.repo [nexus-zabbix] name=Nexus Repository baseurl=http://192.168.8.31:8081/repository/zabbix-proxy/ # 填写nexus地址 enabled=1 gpgcheck=0
yum list 之后发现私服上面对应的zabbix有缓存了
现在测试安装一个zabbix-agent端
四、创建一个proxy类型的yum仓库
案例二:
Name
: proxy-163-yumProxy
:Remote Storage: 远程仓库地址,这里填写: http://mirrors.163.com/centos/Storage
: yum-hub
其他的均是默认。
这里就先创建一个代理163的仓库,其实还可以多创建几个,诸如阿里云的,搜狐的,等等,这个根据个人需求来定义。
四、创建一个group类型的yum仓库
案例三:
Name
:group-yumStorage
:选择专用的blob存储yum-hub。group
: 将左边可选的2个仓库,添加到右边的members下。
文章参考: https://wiki.eryajf.net/pages/2002.html#_1-%E5%B0%86%E5%8E%9F%E6%9C%89%E7%9A%84%E7%A7%BB%E8%B5%B0%E3%80%82 https://blog.51cto.com/daibaiyang119/2147894 https://blog.csdn.net/lusyoe/article/details/54926937 https://www.jianshu.com/p/6139ede291d2 https://blog.csdn.net/lanwp5302/article/details/86517301 https://blog.csdn.net/buptzhengchaojie/article/details/51683672 https://www.cnblogs.com/yhaing/p/8568058.html https://blog.csdn.net/mshaiting/article/details/80392575