将Maven的Docker镜像修改为国内源

Posted BlingblingFu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将Maven的Docker镜像修改为国内源相关的知识,希望对你有一定的参考价值。

将Maven的Docker镜像修改为国内源

前提

​ 在使用Dockerfile构建镜像时,Maven的Docker镜像内置的是官方源,使用起来下载速度太慢,搜了一圈发现阿里在2016年做过阿里源的Maven的镜像但也仅有JDK7和8两个版本,网上博客内容也都琳琅满目,所以在此记录一下,本次使用的Maven镜像是maven:3.8.3-openjdk-11

操作

​ 把带有国内源的settings.xml文件拷贝入Maven的Docker镜像内即可。

  • 第一步:在Dockerfile同级目录下新建文件settings.xml,内容如下:

    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          http://maven.apache.org/xsd/settings-1.0.0.xsd">
        <localRepository/>
        <interactiveMode/>
        <usePluginRegistry/>
        <offline/>
        <pluginGroups/>
        <servers/>
        <mirrors>
            <mirror>
                <id>aliyunmaven</id>
                <mirrorOf>central</mirrorOf>
                <name>阿里云公共仓库</name>
                <url>https://maven.aliyun.com/repository/central</url>
            </mirror>
            <mirror>
                <id>repo1</id>
                <mirrorOf>central</mirrorOf>
                <name>central repo</name>
                <url>http://repo1.maven.org/maven2/</url>
            </mirror>
            <mirror>
                <id>aliyunmaven</id>
                <mirrorOf>apache snapshots</mirrorOf>
                <name>阿里云阿帕奇仓库</name>
                <url>https://maven.aliyun.com/repository/apache-snapshots</url>
            </mirror>
        </mirrors>
        <proxies/>
        <activeProfiles/>
        <profiles>
            <profile>
                <repositories>
                    <repository>
                        <id>aliyunmaven</id>
                        <name>aliyunmaven</name>
                        <url>https://maven.aliyun.com/repository/public</url>
                        <layout>default</layout>
                        <releases>
                            <enabled>true</enabled>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                        </snapshots>
                    </repository>
                    <repository>
                        <id>MavenCentral</id>
                        <url>http://repo1.maven.org/maven2/</url>
                    </repository>
                    <repository>
                        <id>aliyunmavenApache</id>
                        <url>https://maven.aliyun.com/repository/apache-snapshots</url>
                    </repository>
                </repositories>
            </profile>
        </profiles>
    </settings>
    
  • 第二步:在Dockerfile中将上一步的settings.xml文件拷贝进入Maven的Docker镜像内部。

    COPY settings.xml /usr/share/maven/conf/settings.xml
    

    接下来下载依赖的操作都会从阿里云下来了。

以上是关于将Maven的Docker镜像修改为国内源的主要内容,如果未能解决你的问题,请参考以下文章

开发常用镜像资源替换为国内开源镜像(yum,compose,maven,docker,android sdk,npm,国内开源镜像汇总)

为啥修改docker镜像源为国内文件

docker官方镜像修改为国内镜像

Intelij IDEA中修改maven为国内镜像

Intelij IDEA中修改maven为国内镜像

修改Intelij IDEA的maven依据下载为国内镜像(阿里)