Sonatype Nexus兼容apk格式仓库
sonatype/nexus3
当前最新版本:sonatype/nexus3:3.52.0
查看nexus支持的仓库格式
创建一个nexus 容器:
docker run -d -p 8081:8081 --name nexus sonatype/nexus3:3.52.0
查看启动日志:
docker logs nexus -f
访问nexus 仓库:
进入容器查看初始密码:
docker exec -it nexus bash
cat /nexus-data/admin.password
通过查看Repositories可以看到支持的仓库格式:
可以发现sonatype/nexus3:3.52.0版本是不支持apk格式的仓库的
如果以apt格式配置apk的仓库,例如:
https://dl-cdn.alpinelinux.org/alpine/
会有如下的报错:
xxx package mentioned in index not found (try 'apk update')
即使执行了apk update后仍然无法从nexus地址下载仓库资源
配置第三方插件nexus-repository-apk
nexus-repository-apk
插件与nexus版本兼容关系:向上兼容
Plugin Version | Nexus Repository Version |
---|---|
v0.0.1 | 3.19.0-01 |
v0.0.8 | 3.23.0-03 |
v0.0.12 | 3.28.0-01 |
v0.0.18 | 3.30.0-01 |
v0.0.19 | 3.31.0-01 |
v0.0.24 | 3.38.0-01 |
v0.0.26 | 3.41.0-01 |
通过github拉取源码后进行编译:
mvn clean package -PbuildKar
编译完成后,将路径:
- nexus-repository-apk/target/nexus-repository-apk-0.0.26-bundle.kar
文件复制到nexus下的/opt/sonatype/nexus/deploy/
具体的印射方法为:
docker run -d --name nexus -p 8081:8081 -v $文件目录:/opt/sonatype/nexus/deploy/ -e sonatype/nexus3:3.52.0
再次重启nexus可以看到,已经可以支持apk格式的仓库了: