我正在建立开发管道.将我的Java应用程序的成功版本和经过测试的版本部署到私有Maven存储库(Sonatype Nexus)后,将自动创建Docker映像.
成功构建应用程序后,我需要将其发布到某个地方,并且Docker需要有权下载它并创建容器.
我考虑过Docker访问Nexus Maven存储库,但没有找到如何从私有存储库下载jar的方法.在Nexus文档中,我没有找到如何传递身份验证参数来访问私有URL的方法.有人知道吗?
PS:我也接受更简单的解决方案来完成此操作.
最佳答案
我刚刚发现可以使用cURL做到这一点.例:
curl -u username:password -o myapp.war "http://nexus.mycompany.com/service/local/artifact/maven/redirect?r=snapshots&g=com.company&a=MyApp&v=1.0-SNAPSHOT&p=war" -L
因此,在docker-compose.yml中,我有这样一行:
RUN curl -u username:password -o myapp.war "http://nexus.mycompany.com/service/local/artifact/maven/redirect?r=snapshots&g=com.company&a=MyApp&v=1.0-SNAPSHOT&p=war" -L