轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
csanchez/maven
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

maven Docker 镜像下载 - 轩辕镜像

maven 镜像详细信息和使用指南

maven 镜像标签列表和版本信息

maven 镜像拉取命令和加速下载

maven 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

maven
csanchez/maven
自动构建

maven 镜像详细信息

maven 镜像标签列表

maven 镜像使用说明

maven 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

官方Maven Docker镜像的持续构建版本,提供多种Java版本(如OpenJDK、AdoptOpenJDK等)和操作系统(Linux、Windows)支持,用于在容器环境中便捷执行Maven项目的构建、测试与打包流程。
2 收藏0 次下载activecsanchez镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

maven 镜像详细说明

maven 使用指南

maven 配置说明

maven 官方文档

docker-maven

支持的标签及对应的Dockerfile链接

所有镜像发布于 csanchez/maven,扩展自Docker官方镜像的版本同时发布于 maven。

基于Linux的镜像

查看Docker Hub maven 和 csanchez/maven 获取最新标签列表

  • openjdk-8
  • openjdk-8-slim
  • openjdk-11
  • openjdk-11-slim
  • openjdk-14
  • openjdk-14-slim
  • openjdk-15
  • adoptopenjdk-8
  • adoptopenjdk-8-openj9
  • adoptopenjdk-11
  • adoptopenjdk-11-openj9
  • adoptopenjdk-14
  • adoptopenjdk-14-openj9
  • ibmjava-8
  • ibmjava-8-alpine
  • amazoncorretto-8
  • amazoncorretto-11
  • azulzulu-11 - 仅在 csanchez/maven 仓库下

基于Windows的镜像

查看Docker Hub csanchez/maven 获取最新标签列表

  • openjdk-8-windows
  • openjdk-8-windows-nanoserver
  • openjdk-11-windows
  • openjdk-11-windows-nanoserver
  • openjdk-14-windows
  • adoptopenjdk-8-openj9-windows
  • adoptopenjdk-11-openj9-windows
  • amazoncorretto-8-windows
  • amazoncorretto-11-windows
  • azulzulu-11-windows

什么是Maven?

Apache Maven 是一款软件项目管理与理解工具。基于项目对象模型(POM)概念,Maven可从中央信息源管理项目的构建、报告和文档。

如何使用此镜像

可直接使用Maven Docker镜像运行Maven项目,通过 docker run 传递Maven命令:

Linux

docker run -it --rm --name my-maven-project -v "$(pwd)":/usr/src/mymaven -w /usr/src/mymaven maven:3.3-jdk-8 mvn verify

Windows

docker run -it --rm --name my-maven-project -v "$(Get-Location)":C:/Src -w C:/Src csanchez/maven:3.3-jdk-8-windows mvn verify

Windows

docker run -it --rm --name my-maven-project -v "$(Get-Location)":C:/Src -w C:/Src maven:3.3-jdk-8-windows mvn clean install

构建本地Docker镜像(可选)

此为基础镜像,包含最精简的必要依赖。若在 Dockerfile 中添加自定义包,可按以下方式构建本地镜像:

Linux

docker build --tag my_local_maven:3.6.0-jdk-8 .

Windows

docker build -f Dockerfile.windows --tag my_local_maven:3-jdk-9-windows --build-arg WINDOWS_DOCKER_TAG=1803 .

多阶段构建

可使用Maven构建应用并通过多阶段构建将其打包到不含Maven的镜像中:

# 构建阶段
FROM maven
WORKDIR /usr/src/app
COPY pom.xml .
RUN mvn -B -e -C -T 1C org.apache.maven.plugins:maven-dependency-plugin:3.1.1:go-offline
COPY . .
RUN mvn -B -e -o -T 1C verify

# 打包阶段(不含Maven)
FROM openjdk
COPY --from=0 /usr/src/app/target/*.jar ./

重用Maven本地仓库

通过创建卷并挂载到 /root/.m2,可在容器间重用本地Maven仓库:

docker volume create --name maven-repo
docker run -it -v maven-repo:/root/.m2 maven mvn archetype:generate # 下载依赖
docker run -it -v maven-repo:/root/.m2 maven mvn archetype:generate # 重用已下载依赖

或直接使用主机的 .m2 缓存目录(如与IDE共享的目录):

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 maven mvn package

在镜像中打包本地仓库

$MAVEN_CONFIG 目录(默认 /root/.m2 或 C:\Users\ContainerUser\.m2)可配置为卷,故构建时复制的内容会丢失。为此提供 /usr/share/maven/ref/(或 C:\ProgramData\Maven\Reference)目录,容器启动时会将其内容复制到 $MAVEN_CONFIG。

要创建预打包仓库,需准备含所需依赖的 pom.xml 并在 Dockerfile 中使用:

COPY pom.xml /tmp/pom.xml
RUN mvn -B -f /tmp/pom.xml -s /usr/share/maven/ref/settings-docker.xml dependency:resolve

添加自定义 settings.xml 到镜像:

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

示例可查看 tests 目录。

以非root用户运行(Windows不支持)

Maven需用户主目录存储依赖,若用户不存在需设置 user.home Java属性。例如,以用户 1000 运行并挂载主机Maven仓库:

docker run -v ~/.m2:/var/maven/.m2 -ti --rm -u 1000 -e MAVEN_CONFIG=/var/maven/.m2 maven mvn -Duser.home=/var/maven archetype:generate

镜像变体

maven 镜像提供多种变体,适用于不同场景:

maven:<version>

默认镜像,适用于临时容器(挂载源码运行)及作为基础镜像构建其他镜像,含最精简依赖。

构建与测试

构建镜像

docker build -t maven .

测试

测试使用 bats(Linux)和 pester(Windows,需Pester 4.x)编写,位于 tests 目录。通过环境变量 TAG 指定测试镜像:

Linux

TAG=jdk-11 bats tests

Windows

$env:TAG="jdk-11" ; Invoke-Pester -Path tests

运行所有测试

Linux:

for dir in $(/bin/ls -1 -d */ | grep -v 'tests\|windows'); do TAG=$(basename $dir) bats tests; done

Windows:

Get-ChildItem -Path windows\* -File -Include "Dockerfile.windows-*" | ForEach-Object { Push-Location ; $env:TAG=$_.Name.Replace('Dockerfile.windows-', '') ; Invoke-Pester -Path tests ; Pop-Location }

依赖准备

  • Bats:OS X可通过 brew install bats 安装
  • Pester:Windows需升级到4.x,参考教程
  • 初始化子模块:
    git submodule init
    git submodule update
    

发布到Docker Hub

需向 docker-library/official-images 提交PR,通过 publish.sh 运行 generate-stackbrew-library.sh 实现。

许可证

查看镜像中软件的许可证信息。

用户反馈

问题反馈

通过 GitHub issue 提交问题,或在Freenode的 #docker-library IRC频道联系官方镜像维护者。

贡献

欢迎贡献功能、修复或更新。大型贡献建议先通过 GitHub issue 讨论,以确保方向正确并避免重复工作。

查看更多 maven 相关镜像 →
maven logo
maven
by library
官方
Apache Maven是一款基于项目对象模型(POM)的软件项目管理与理解工具,主要用于自动化项目构建流程、统一管理项目依赖、整合项目信息(如文档、报告等),并通过标准化的项目结构和生命周期管理,帮助开发团队提高协作效率、简化构建过程,确保项目开发的一致性与可重复性。
1653500M+ pulls
上次更新:4 天前
okteto/maven logo
okteto/maven
by Okteto
认证
用于Okteto CLI的Java Maven开发环境镜像,Okteto是面向开发者的Kubernetes工具。
100K+ pulls
上次更新:1 个月前
chainguard/maven logo
chainguard/maven
by Chainguard, Inc.
认证
使用Chainguard的低至零CVE容器镜像构建、交付和运行安全软件。
10K+ pulls
上次更新:17 小时前
atlassian/maven logo
atlassian/maven
by Atlassian
认证
在预创建的非root用户下运行的Apache Maven
65.9K pulls
上次更新:6 年前
paketobuildpacks/maven logo
paketobuildpacks/maven
by Linux Foundation
暂无描述
100K+ pulls
上次更新:1 个月前

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.