本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
用于持续集成的 OpenJDK/Java Docker 镜像,专为 CircleCI 环境设计
该镜像旨在替代旧版 CircleCI OpenJDK 镜像 circleci/openjdk。
cimg/openjdk 是由 CircleCI 开发的 Docker 镜像,专注于持续集成构建场景。每个标签包含特定版本的 OpenJDK、Java 开发工具包(JDK),以及在 CircleCI 环境中成功完成构建所需的二进制文件和工具。
该镜像可与 CircleCI 的 docker 执行器配合使用。示例配置如下:
jobs: build: docker: - image: cimg/openjdk:15.0 # 使用 OpenJDK 镜像 steps: - checkout # 检出代码 - run: java --version # 验证 Java 版本
上述示例中,cimg/openjdk:15.0 作为主容器镜像,标签 15.0 对应 OpenJDK v15.0.2 版本。配置后即可在任务步骤中使用 OpenJDK。
本镜像基于 Adoptium 提供的 OpenJDK 构建,包含 Java 编程语言环境。
变体镜像基于基础镜像,额外集成特定工具以满足不同场景需求。
在基础 OpenJDK 镜像中预装 Node.js。使用时需在标签后添加 -node 后缀,例如:
jobs: build: docker: - image: cimg/openjdk:15.0-node # Node.js 变体 steps: - checkout - run: java --version # 验证 Java - run: node --version # 验证 Node.js
在基础镜像中预装 Node.js、Selenium 及浏览器依赖(通过 apt 安装),需配合 CircleCI Browser Tools orb 使用(用于安装 Chrome/Firefox 浏览器)。使用时添加 -browser 后缀,例如:
orbs: browser-tools: circleci/browser-tools@1.1 # 引入浏览器工具 orb jobs: build: docker: - image: cimg/openjdk:15.0-browsers # 浏览器变体 steps: - browser-tools/install-browser-tools # 安装浏览器 - checkout - run: | node --version # 验证 Node.js java --version # 验证 Java google-chrome --version # 验证 Chrome
镜像标签格式如下:
cimg/openjdk:<openjdk-version>[-variant]
<openjdk-version>:OpenJDK 版本号,支持完整语义化版本(如 11.0.10)或次要版本(如 11.0)。次要版本标签会自动指向最新补丁更新(例如 11.0 会从 11.0.10 自动更新到 11.0.11)。[-variant]:可选变体后缀,如 -node(Node.js 变体)或 -browser(浏览器变体)。本地构建和运行镜像需满足以下环境要求:
--recurse-submodules 参数拉取子模块:
git clone --recurse-submodules <你的 Fork 仓库地址>
git submodule update --recursive
直接克隆并拉取子模块:
git clone --recurse-submodules [邮箱已删除]:CircleCI-Public/cimg-openjdk.git
使用 gen-dockerfiles.sh 脚本生成特定版本的 Dockerfile,需指定 OpenJDK 版本及 Adoptium 下载链接(因 Adoptium 版本号含额外构建号,需手动传入 URL)。例如生成 OpenJDK 11.0.5 的 Dockerfile:
./shared/gen-dockerfiles.sh 11.0.5#[***] 生成的 Dockerfile 位于 `./11.0/Dockerfile`。 ### 本地构建与测试 生成 Dockerfile 后,可本地构建并测试镜像: ```bash cd 11.0 # 进入版本目录 docker build -t test/openjdk:11.0.5 . # 构建镜像 docker run -it test/openjdk:11.0.5 bash # 运行容器测试
使用 build-images.sh 脚本批量构建本地镜像(需先生成 Dockerfile):
./build-images.sh
通过 release.sh 脚本自动化发布流程(以 OpenJDK 9.9.9 为例,需替换为实际版本和 URL):
./shared/release.sh 9.9.9#[***] 该脚本会自动创建分支、生成 Dockerfile、提交变更并推送到 GitHub(提交信息含 `[release]` 标记,触发 CircleCI 流水线推送镜像至 Docker Hub)。后续需: 1. 等待 CircleCI 构建通过 2. 审核并合并 PR ### 变更集成 - **构建脚本更新**:`./shared` 子模块的变更需通过更新子模块同步: ```bash cd shared && git pull && cd .. && git add shared && git commit -m "更新子模块"
Dockerfile.template 文件,重新生成 Dockerfile 即可生效。欢迎提交 issue 和 PR,但建议注意以下事项:
.circleci/config.yml 语法说明本仓库采用 MIT 许可证,详见 LICENSE。

免费版仅支持 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