arm32v7/maven注意:这是maven官方镜像的arm32v7架构构建版本的"每架构"仓库——更多信息请参见官方镜像文档中的"非amd64架构?"和官方镜像FAQ中的"镜像源在Git中已更改,该怎么办?"。
维护者:
Carlos Sanchez
获取帮助:
Docker社区Slack、Server Fault、Unix & Linux或Stack Overflow
Dockerfile链接3.9.11-eclipse-temurin-11-noble, 3.9.11-eclipse-temurin-11, 3.9-eclipse-temurin-11-noble, 3.9-eclipse-temurin-11, 3-eclipse-temurin-11-noble, 3-eclipse-temurin-11
3.9.11-eclipse-temurin-17-noble, 3.9.11-eclipse-temurin-17, 3.9-eclipse-temurin-17-noble, 3.9-eclipse-temurin-17, 3-eclipse-temurin-17-noble, 3-eclipse-temurin-17
4.0.0-rc-4-eclipse-temurin-17-noble, 4.0.0-rc-4-eclipse-temurin-17
3.9.11-eclipse-temurin-8-noble, 3.9.11-eclipse-temurin-8, 3.9-eclipse-temurin-8-noble, 3.9-eclipse-temurin-8, 3-eclipse-temurin-8-noble, 3-eclipse-temurin-8
提交issue:
[***]
支持的架构:(更多信息)
amd64、arm32v7、arm64v8、ppc64le、riscv64、s390x
镜像详情:
repo-info仓库的repos/maven/目录 (历史记录)
(包含镜像元数据、传输大小等)
镜像更新:
official-images仓库的library/maven标签
official-images仓库的library/maven文件 (历史记录)
本文档来源:
docs仓库的maven/目录 (历史记录)
Apache Maven是一款软件项目管理和理解工具。基于项目对象模型(POM)概念,Maven可从中央信息管理项目的构建、报告和文档。
!logo
可直接使用Maven Docker镜像运行Maven项目,通过docker run传递Maven命令:
console$ docker run -it --rm --name my-maven-project -v "$(pwd)":/usr/src/mymaven -w /usr/src/mymaven arm32v7/maven:3.3-jdk-8 mvn clean install
本镜像为基础镜像,仅包含必要依赖。若在Dockerfile中添加自定义依赖,可按以下方式构建本地镜像:
console$ docker build --tag my_local_arm32v7/maven:3.5.2-jdk-8 .
可通过创建卷并挂载到/root/.m2来跨容器重用本地Maven仓库。
console$ docker volume create --name maven-repo $ docker run -it -v maven-repo:/root/.m2 arm32v7/maven mvn archetype:generate # 将下载依赖 $ docker run -it -v maven-repo:/root/.m2 arm32v7/maven mvn archetype:generate # 将重用已下载依赖
也可使用本地.m2缓存目录(如与Eclipse/IDEA共享的目录):
console$ docker run -it --rm -v "$PWD":/usr/src/mymaven -v "$HOME/.m2":/root/.m2 -v "$PWD/target:/usr/src/mymaven/target" -w /usr/src/mymaven arm32v7/maven mvn clean package
$MAVEN_CONFIG目录(默认/root/.m2)可配置为卷,因此构建时Dockerfile中复制到该目录的内容会丢失。为此,镜像中存在/usr/share/maven/ref/目录,容器启动时该目录下的所有内容会复制到$MAVEN_CONFIG。
要创建预打包仓库,需创建包含所需依赖的pom.xml并在Dockerfile中使用。/usr/share/maven/ref/settings-docker.xml是将本地仓库修改为/usr/share/maven/ref/repository的配置文件,也可使用自定义配置文件(需将/usr/share/maven/ref/repository设为本地仓库)。
dockerfileCOPY pom.xml /tmp/pom.xml RUN mvn -B -f /tmp/pom.xml -s /usr/share/maven/ref/settings-docker.xml dependency:resolve
添加自定义settings.xml到镜像:
dockerfileCOPY settings.xml /usr/share/maven/ref/
示例可参考tests目录。
Maven需用户主目录下载依赖,若用户在镜像中不存在,需设置user.homeJava属性。
例如,以用户1000运行并挂载主机Maven仓库:
console$ docker run -v ~/.m2:/var/maven/.m2 -ti --rm -u 1000 -e MAVEN_CONFIG=/var/maven/.m2 arm32v7/maven mvn -Duser.home=/var/maven archetype:generate
查看本镜像包含软件的许可证信息。
与所有Docker镜像一样,本镜像可能包含其他软件,这些软件可能采用其他许可证(如基础发行版中的Bash等,以及主要软件的直接或间接依赖)。
部分自动检测的额外许可证信息可在repo-info仓库的maven/目录中找到。
对于预构建镜像的使用,镜像用户有责任确保其使用符合包含的所有软件的相关许可证要求。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务