Nexus OSS配置hosted类型yum仓库

以前写到过nexus oss进行yum代理,所缓存的数据都是yum源的数据,如果需要使用特定版本或者自己编译的包,这种方法就不灵了。本文讲述nexus oss创建hosted类型yum仓库,hosted类型是自建仓库,上传rpm包后会生成repodata文件。

具体操作方法如下:

1,在Repositories–>Create repository中创建仓库,仓库类型选择yum(hosted)



2,在新页面中设置仓库属性,仓库名关系到以后yum路径,且设置后不可修改。

Deployment pollcy需设置成Allow redeploy,此参数决定仓库是否可以重新发布,设置为Disabled redeploy则不可重新发布,设置为Read-only则只读。

创建后点击页面最下方的Create repository创建仓库。



3,创建后即可在仓库列表中看到,点击进入创建的仓库


4,记录下URL参数,这个url将会是rpm上传地址和yum获取包的地址。


5,可以看到Upload选项卡中并无上传到hosted库的选项,这里上传需要使用curl向仓库提交,这里以上传elasticsearch-5.5.2.rpm为例。

命令是curl -v –user ‘用户名:密码’ –upload-file ./要上传的包.rpm http://danteng.org/repository/yumhosted/上传到的路径


所以,完整的命令是curl -v –user ‘root:123456’ –upload-file ./elasticsearch-5.5.2.rpm http://danteng.org/repository/yumhosted/elasticsearch-5.5.2.rpm


上传完成即可在nexus中看到上传的包和生成的repodata。


6,上传完文件并生成repodata后,下一步写yum.repos配置文件。这里的baseurl就是上面创建仓库时记录的URL。我这开启了验证,所以访问时需携带认证参数。

[nexushosted]

name=nexushosted

baseurl=http://root:[email protected]/repository/yumhosted

enabled=1

gpgcheck=0

priority=1


至此为止,hosted仓库配置完毕。仓库第一次上传文件时,会自动生成repodata文件,以后上传的文件会间隔一段时间后生成,可点击Rebuild Index重建repodata。


如果某个包已不再需要,可在Brose中选择该文件,然后Delete asset删除之。


如果某个仓库不再需要,可选Delete repository删除之。

 

本文链接地址: https://danteng.org/nexus-oss-yum-hosted/