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

该Docker镜像预设了git、maven和gpg环境,并集成了由bot触发发布的脚本,旨在简化Maven项目的自动化发布流程。通过提供预置工具链和自动化脚本,支持GPG签名、版本管理、安全认证等关键发布环节,适用于CI/CD环境中由bot执行的可靠发布任务。
mvn prepare步骤执行失败,自动回滚发布过程,保障代码库一致性适用于需要自动化Maven项目发布流程的场景,特别适合:
镜像内置核心发布脚本:release.sh,用于执行完整的发布流程自动化。
脚本运行依赖以下环境变量,需根据项目需求配置:
| 变量名 | 说明 |
|---|---|
GPG_ENABLED | 是否启用GPG签名(true/false) |
GPG_KEY_ID | GPG签名密钥ID |
GPG_KEY | base64编码的GPG私钥 |
GPG_PASSPHRASE | GPG私钥解密密码 |
| 变量名 | 说明 |
|---|---|
SSH_PRIVATE_KEY | base64编码的SSH私钥 |
SSH_ROOT_FOLDER | SSH根目录,默认值为${SSH_ROOT_FOLDER} |
SSH_EXTRA_KNOWN_HOST | 需添加到.ssh/known_hosts的额外主机名 |
SSH_PASSPHRASE | SSH私钥解密密码(若私钥加密) |
| 变量名 | 说明 |
|---|---|
MAVEN_REPO_SERVER_ID | Maven仓库服务器ID(用于推送artifacts) |
MAVEN_REPO_SERVER_USERNAME | Maven仓库认证用户名 |
MAVEN_REPO_SERVER_PASSWORD | Maven仓库认证密码 |
MAVEN_PROJECT_FOLDER | 执行Maven命令的项目根目录 |
MAVEN_ARGS | 发布过程中传递给Maven的额外参数 |
MAVEN_OPTION | Maven运行选项(如JVM参数等) |
MAVEN_DEVELOPMENT_VERSION_NUMBER | 开发版本号格式 |
MAVEN_RELEASE_VERSION_NUMBER | 发布版本号格式 |
| 变量名 | 说明 |
|---|---|
DOCKER_REGISTRY_ID | Docker仓库ID(如registry.hub.docker.com) |
DOCKER_REGISTRY_USERNAME | Docker仓库认证用户名 |
DOCKER_REGISTRY_PASSWORD | Docker仓库认证密码 |
| 变量名 | 说明 |
|---|---|
SKIP_GIT_SANITY_CHECK | 设为true跳过git完整性检查(会重置分支) |
SKIP_PERFORM | 设为false不跳过maven perform步骤 |
GIT_RELEASE_BOT_NAME | Git提交时使用的bot用户名 |
GIT_RELEASE_BOT_EMAIL | Git提交时使用的bot用户*** |
CI_COMMIT_SHA | 触发工作流的提交SHA值 |
CI_COMMIT_REF_NAME | 触发工作流的分支或标签引用 |
VERSION_MAJOR | 设为true以递增主版本号 |
VERSION_MINOR | 设为true以递增次版本号 |
RELEASE_BRANCH_NAME | 自定义发布分支名称(仅在该分支触发发布) |
docker run -e GPG_ENABLED=true \ -e GPG_KEY_ID=ABC*** \ -e GPG_KEY="$(base64 /local/path/to/gpg_private.key)" \ -e GPG_PASSPHRASE=your_gpg_passphrase \ -e SSH_PRIVATE_KEY="$(base64 /local/path/to/ssh_private.key)" \ -e MAVEN_REPO_SERVER_ID=central \ -e MAVEN_REPO_SERVER_USERNAME=maven_user \ -e MAVEN_REPO_SERVER_PASSWORD=maven_pass \ -e VERSION_MINOR=true \ -e RELEASE_BRANCH_NAME=release \ [镜像名称] /release.sh
version: '3' services: maven-release: image: [镜像名称] environment: GPG_ENABLED: "true" GPG_KEY_ID: "ABC***" GPG_KEY: "${GPG_PRIVATE_KEY_BASE64}" GPG_PASSPHRASE: "${GPG_PASSPHRASE}" SSH_PRIVATE_KEY: "${SSH_PRIVATE_KEY_BASE64}" MAVEN_REPO_SERVER_ID: "central" MAVEN_REPO_SERVER_USERNAME: "${MAVEN_USERNAME}" MAVEN_REPO_SERVER_PASSWORD: "${MAVEN_PASSWORD}" VERSION_MINOR: "true" RELEASE_BRANCH_NAME: "release" GIT_RELEASE_BOT_NAME: "release-bot" GIT_RELEASE_BOT_*** "***" command: /release.sh
免费版仅支持 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 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429