在dockerfile中把maven的下载源更换为阿里的镜像仓库

开门见山,直接上代码

1,在docker打包的同级目录下添加settings.xml文件

image.png

2,在安装项目依赖的maven命令运行前,将settings.xml文件copy到docker环境的maven配置文件中

COPY settings.xml /etc/maven/settings.xml
COPY pom.xml /tmp/warehouse/pom.xml
RUN mvn package -Dmaven.test.skip=true

3,这时再运行docker构建命令的时候,可以看到所有的第三方包都从阿里云的镜像源安装了

image.png

后记

一开始我只是想找个可以在maven命令里指定下载源的命令而已,但翻遍了中文互联网的相关文章,都没有找到这个命令,大家都是翻来覆去的找maven配置文件,然后把源指定进去。但这不符合我这个业务场景的要求。后来实在没办法了,我就用了一种笨方法去替换安装源:在docker构建完java环境镜像之后,立马进入这个镜像启动的容器,然后找出docker中的maven配置文件在docker环境中的位置。找到之后就简单了,把配置文件复制过来,替换掉docker环境里的maven配置,下载速度立马起飞。
当然,也有可能是我找的方式不对,如果有人知道如何用maven命令指定下载源,还望请不吝赐教。

你可能感兴趣的:(在dockerfile中把maven的下载源更换为阿里的镜像仓库)