docker maven 打包jar_关于使用 docker 打包 maven 项目
不要使用 docker:maven 镜像作为基础镜像构建 Dockerfile 。如果非要使用的话,需要将 settings.xml 等文件手动添加到 /usr/share/maven/ref/repository 目录下,再执行构建(因为docker:maven 镜像默认设定本地仓库为 /usr/share/maven/ref/repository)。FROM maven:3.6.0-jdk-.
不要使用 docker:maven 镜像作为基础镜像构建 Dockerfile 。
如果非要使用的话,需要将 settings.xml 等文件手动添加到 /usr/share/maven/ref/repository 目录下,再执行构建(因为 docker:maven 镜像默认设定本地仓库为 /usr/share/maven/ref/repository)。
FROM maven:3.6.0-jdk-8-alpine
COPY settings.xml /usr/share/maven/ref/
镜像构建完毕,开始启动容器。将 自动执行脚本 mvn-entrypoint.sh,用于将 /usr/share/maven/ref/repository 中的内容重新挂载到 .m2 目录下。
如果需要将 jar包打包成 docker 镜像,可以直接使用 docker-maven-plugin 插件,无需手动编写上述 DockerFile 文件。构建完成后,将构建后的镜像推送到镜像仓库中。
除此之外,我们可以直接使用 docker:maven镜像启动一个容器,在该容器中执行 package 操作。这里可以挂载本地文件中的 .m2 到容器中的 /root/.m2。比如:
pipeline {
agent {
docker {
image 'maven:3-alpine'
args '-v $HOME/.m2:/root/.m2'
}
}
stages {
stage('Build') {
steps {
sh 'mvn -B -DskipTests clean package'
}
}
}
}
233
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)