maven 私服 nexus3 配置,踩坑 , Ready to Connet

maven 私服 nexus3 配置,使用,踩坑(欢迎留言提意见,共同进步)

继续上文docker-compose 搭建 maven 私服 nexus3 笔记


新增一个阿里的仓库
在这里插入图片描述
类型
在这里插入图片描述
起个名字,配置上阿里云的地址,保存
https://maven.aliyun.com/repository/public
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第1张图片
然后就添加好了
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第2张图片
这里简单说一下maven仓库组的概念

Nexus包含多种仓库概念、包括主要的宿主仓库、代理仓库、仓库组等。不同仓库提供不同配置、服务
四种仓库类型:hosted(宿主仓库)、proxy(代理仓库)、group(仓库组)、irtual(虚拟仓库)。每个仓库的格式为maven2或者maven1、此外仓库还有个属性为Policy(策略)、表示该仓库是发布(Release)版本仓库、还是快照(Snapshot)版本。最后两列是仓库的状态和路径

个人理解看下图
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第3张图片
我们把aliyun的仓库添加到这个组里。

但是这个 Ready to Connect 状态不能用,Remote Available 这才是可用的
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第4张图片
我这里能用的这个仓库是阿里云的公共仓库,也是我试了很多个唯一一个能自动下载好的,其他的新增仓库都是一直处于 Ready to Connet 状态,
阿里云的公共仓库 https://maven.aliyun.com/repository/public
新增阿里云仓库后也是 Ready to Connet 状态,只要你网络状态良好,过一段时间,它就自己下载好了,时间可能会比较长
其他仓库怎么让它可用呢,我们要用到离线下载,

查资料发现大部分都是这么说的,但是地址都不能用
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第5张图片
它给的地址都是不能用的
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第6张图片
后来找到的问题
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第7张图片
英语好的自己看一下,其实原因这个就是原来网站走http协议的,现在不支持了,现在走https协议了,下载地址如下
从https://repo.maven.apache.org/maven2/.index/ 找到需要下载的索引文件。
如:https://repo.maven.apache.org/maven2/.index/nexus-maven-repository-index.gz
还有
https://repo.maven.apache.org/maven2/.index/nexus-maven-repository-index.properties

然后自行下载,按步骤操作
将其上传到nexus服务器存储数据的仓库中,对应web管理界面上就是Repository/Blob Stores/仓库名。
在我的服务器上地址是在/var/opt/nexus-data/blobs/仓库名。
在仓库名目录下创建.index目录,然后将下载的文件copy到该目录中,之后很快就同步好了,同步完成状态可通过查看web管理界面仓库状态栏,当出现Online - Remote Aviailable时就表示已同步完成了。


按步骤展示
下载好文件
在这里插入图片描述
要上传到的位置

# 我的是docker数据卷映射的路径
[root@MiWiFi-R3P-srv default] pwd
/usr/local/docker/nexus/data/blobs/default
[root@MiWiFi-R3P-srv default] ls
7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-deletions.index  7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-metrics.properties  content  metadata.properties

# 上传文件后
[root@MiWiFi-R3P-srv default] ll
总用量 840860
-rw-r--r--. 1  200  200      4096 4月   4 00:03 7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-deletions.index
-rw-r--r--. 1  200  200        84 4月   4 00:03 7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-metrics.properties
drwxr-xr-x. 2  200  200         6 4月   4 00:03 content
-rw-r--r--. 1  200  200        72 4月   4 00:03 metadata.properties
-rw-r--r--. 1 root root 861021613 4月   4 02:52 nexus-maven-repository-index.gz
-rw-r--r--. 1 root root      1130 4月   4 02:52 nexus-maven-repository-index.properties.txt

# 解压 nexus-maven-repository-index.gz
[root@MiWiFi-R3P-srv default] gzip nexus-maven-repository-index.gz -d
[root@MiWiFi-R3P-srv default] ll -h
总用量 5.8G
-rw-r--r--. 1  200  200 4.0K 4月   4 00:03 7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-deletions.index
-rw-r--r--. 1  200  200   84 4月   4 00:03 7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-metrics.properties
drwxr-xr-x. 2  200  200    6 4月   4 00:03 content
-rw-r--r--. 1  200  200   72 4月   4 00:03 metadata.properties
-rw-r--r--. 1 root root 5.8G 4月   4 02:52 nexus-maven-repository-index
-rw-r--r--. 1 root root 1.2K 4月   4 02:52 nexus-maven-repository-index.properties.txt
# 文件真大,将近6G
# 改一下用户和组跟其他文件一直
[root@MiWiFi-R3P-srv default] chown 200:200 nexus-maven-repository-index.properties.txt
[root@MiWiFi-R3P-srv default] chown 200:200 nexus-maven-repository-index
# 查看一下
[root@MiWiFi-R3P-srv default] ll
总用量 6055324
-rw-r--r--. 1 200 200       4096 4月   4 00:03 7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-deletions.index
-rw-r--r--. 1 200 200         84 4月   4 00:03 7C248FA1-C573123B-BA7706F9-7F826828-08F9CBF9-metrics.properties
drwxr-xr-x. 2 200 200          6 4月   4 00:03 content
-rw-r--r--. 1 200 200         72 4月   4 00:03 metadata.properties
-rw-r--r--. 1 200 200 6200633318 4月   4 02:52 nexus-maven-repository-index
-rw-r--r--. 1 200 200       1130 4月   4 02:52 nexus-maven-repository-index.properties.txt

# 权限不够的话还可以往大了放开
[root@MiWiFi-R3P-srv default] chmod 777 nexus-maven-repository-index
[root@MiWiFi-R3P-srv default] chmod 777 nexus-maven-repository-index.properties.txt 

#重启一下容器
[root@MiWiFi-R3P-srv default] docker ps
CONTAINER ID        IMAGE                                 COMMAND                  CREATED             STATUS              PORTS                  NAMES
beb0f1825f10        192.168.31.185:5000/sonatype/nexus3   "sh -c ${SONATYPE_..."   3 hours ago         Up 14 minutes       0.0.0.0:80->8081/tcp   nexus3
[root@MiWiFi-R3P-srv default] docker restart beb0f1825f10
beb0f1825f10

果然可以了
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第8张图片
我发现能用的仓库状态有时也不对,我下面的两个仓库都是能用的,但是状态不对。。。
maven 私服 nexus3 配置,踩坑 , Ready to Connet_第9张图片


接下来出,在项目中怎样使用maven 私服,下载pom文件依赖,打包部署到私服,怎么从私服下载自己写的jar,怎么上传三方jar包,内容比较简单,网上到处都是教程,个人感觉这编涉及到的内容网上资料比较少

你可能感兴趣的:(nexus,maven,docker)