本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
由 IBM Runtime Technologies 官方团队维护。
可通过 IBM developerWorks 论坛获取 IBM Java 运行时与 SDK 相关支持。
镜像标签聚焦 Java 8 版本,核心标签及功能如下(无额外版本后缀时默认基于 Ubuntu 基础镜像):
IBM Java GitHub 仓库:[***] 可参考官方 How Do I ...? 页面)
amd64(x86-64)、ppc64le(PowerPC 64 位小端序)、s390x(IBM Z 系列服务器),支持多架构自动适配(无需手动添加架构前缀)。
包含元数据、传输大小等信息,可查看 repo-info 仓库的 repos/ibmjava/ 目录(历史记录)。
docs 仓库的 ibmjava/ 目录(历史记录)
library/ibmjava 是 IBM 官方推出的 Java 运行时与开发工具包容器化版本,核心特性如下:
底层 JVM 优势:基于 Eclipse OpenJ9 JVM(由 IBM 贡献至 Eclipse 基金会),具备低内存占用(比传统 HotSpot JVM 节省 30%+ 内存)、快速启动(启动时间缩短 50%+)、类数据共享(Class Data Sharing)等企业级特性,适合大规模容器集群与微服务场景
三种核心变体:
基础镜像适配:
生态兼容性:是 IBM WebSphere-Liberty 应用服务器的基础镜像,可无缝运行 SAP、IBM 自研企业应用及第三方 Java 框架(如 Spring Boot、MyBatis)
使用 8-jre 变体(生产环境推荐),将 JAR 包嵌入镜像并运行:
# 选择 Java 8 JRE 镜像(Ubuntu 基础,兼容性强) FROM library/ibmjava:8-jre # 创建应用目录(避免权限冲突,使用非 root 用户) RUN mkdir -p /opt/app && chown 1001:1001 /opt/app USER 1001 # 复制预编译的 JAR 包到容器 COPY --chown=1001:1001 app.jar /opt/app/ # 启动命令(可添加 JVM 参数优化,如限制堆内存) CMD ["java", "-Xmx512m", "-jar", "/opt/app/app.jar"]
构建并运行:
# 构建镜像(标签为 ibmjava-app) docker build -t ibmjava-app . # 交互式运行,退出时自动删除容器 docker run -it --rm -p 8080:8080 ibmjava-app
若 JAR 包需频繁更新,可挂载主机目录到容器,无需重新构建镜像:
# 选择 Java 8 SFJ 变体(轻量,适合云环境) FROM library/ibmjava:8-sfj # 直接使用默认用户,指定 JAR 包路径(从主机挂载) CMD ["java", "-jar", "/opt/app/app.jar"]
构建并运行(挂载主机 ./jars 目录到容器 /opt/app):
docker build -t ibmjava-sfj-app . # 挂载主机目录,实时读取最新 JAR 包 docker run -it --rm -v $(pwd)/jars:/opt/app -p 8080:8080 ibmjava-sfj-app
利用 IBM SDK 独有的类数据共享特性,实现多容器间 JVM 类数据共享,降低整体内存消耗:
# 选择 Java 8 JRE 镜像 FROM library/ibmjava:8-jre # 创建类数据共享目录与应用目录 RUN mkdir -p /opt/shareclasses /opt/app && chown 1001:1001 /opt/shareclasses /opt/app USER 1001 # 复制 JAR 包 COPY --chown=1001:1001 app.jar /opt/app/ # 启动命令:启用类数据共享,指定缓存目录 CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses", "-jar", "/opt/app/app.jar"]
构建并通过数据卷共享类缓存:
# 1. 创建命名数据卷(存储类缓存,跨容器共享) docker volume create ibmjava-cds-volume # 2. 构建镜像 docker build -t ibmjava-cds-app . # 3. 启动多个容器,共享同一类缓存卷 docker run -d -v ibmjava-cds-volume:/opt/shareclasses -p 8081:8080 ibmjava-cds-app docker run -d -v ibmjava-cds-volume:/opt/shareclasses -p 8082:8080 ibmjava-cds-app
效果:第二个及后续容器启动时间缩短 30%+,每个容器内存占用减少 20%+(依赖类缓存命中率)。
8-sdk
8-jre
8-sfj
使用前请确保遵守所有包含软件的许可条款,商业场景需联系 IBM 确认许可细节。
免费版仅支持 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