
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该仓库中的镜像包含 IBM® SDK, Java™ Technology Edition,专为 s390x 架构构建。IBM Java SDK 提供高性能、可扩展的 Java 运行环境,适用于企业级 Java 应用程序的开发和部署。
注意: 这是
ibmjava官方镜像针对s390x架构的"每架构"仓库。有关更多信息,请参阅官方镜像文档中的"除 amd64 之外的架构?"和官方镜像 FAQ 中的"Git 中的镜像源已更改,现在该怎么办?"。
https://github.com/ibmruntimes/ci.docker
IBM Java Runtimes and SDKs 的 developerWorks 论坛
https://github.com/ibmruntimes/ci.docker/issues%EF%BC%9B%E6%9C%89%E5%85%B3%E6%95%85%E9%9A%9C%E6%8E%92%E9%99%A4%EF%BC%8C%E8%AF%B7%E5%8F%82%E9%98%85 How Do I ...? 页面
包含完整的 IBM Java 软件开发工具包,适用于 Java 应用程序的开发、编译和测试。标签为 8-sdk 或 sdk。
包含 Java 运行时环境,仅包含运行 Java 应用程序所需的组件,不包含开发工具。标签为 8-jre、jre、8 或 latest。
Small Footprint JRE (SFJ) 专为云环境优化,移除了云环境中不需要的 Java 工具和功能(如 Java 控制面板),提供更小的磁盘和内存占用。标签为 8-sfj 或 sfj。
如果关注整体镜像大小,可以考虑使用 Alpine Linux 版本。Alpine Linux 是一个精简版 Linux,基于 musl libc 和 Busybox,基础镜像大小约为 5 MB。由于 IBM SDK 依赖于 GNU glibc,需要额外安装该库(约增加 8 MB 镜像大小)。
不同环境下的镜像大小比较(基于 JRE 版本 8.0-3.10):
| JRE | Ubuntu | Alpine |
|---|---|---|
| 标准 JRE | 305 MB | 184 MB |
| SFJ | 220 MB | 101 MB |
注意: Alpine Linux 不是 IBM® SDK, Java™ Technology Edition 的官方支持操作系统。
方法 1:将 JAR 包内置到镜像中
创建 Dockerfile:
dockerfileFROM s390x/ibmjava:jre RUN mkdir /opt/app COPY japp.jar /opt/app CMD ["java", "-jar", "/opt/app/japp.jar"]
构建并运行:
bashdocker build -t japp . docker run -it --rm japp
方法 2:通过卷挂载 JAR 包
创建 Dockerfile:
dockerfileFROM s390x/ibmjava:jre CMD ["java", "-jar", "/opt/app/japp.jar"]
构建并运行(挂载主机目录到容器):
bashdocker build -t japp . docker run -it -v /path/on/host/system/jars:/opt/app japp
IBM SDK, Java Technology Edition 提供类数据共享功能,可在同一主机上的多个 Java 虚拟机 (JVM) 之间透明动态地共享数据,从而减少每个 JVM 实例消耗的物理内存,并提高 JVM 的启动时间。
要在不同容器中的 JVM 之间启用类数据共享,需要在容器之间共享一个公共位置,可通过主机或数据卷容器实现。
使用主机目录共享
dockerfileFROM s390x/ibmjava:jre RUN mkdir /opt/shareclasses RUN mkdir /opt/app COPY japp.jar /opt/app CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses", "-jar", "/opt/app/japp.jar"]
构建并运行,挂载主机共享目录:
bashdocker build -t japp . docker run -it -v /path/on/host/shareclasses/dir:/opt/shareclasses japp
使用数据卷容器共享
创建数据卷容器:
bashdocker create -v /opt/shareclasses --name classcache japp /bin/true
使用 --volumes-from 标志启动 JVM 容器:
bashdocker run -it --volumes-from classcache japp
创建 docker-compose.yml 文件:
yamlversion: '3' services: app: build: . volumes: - /path/on/host/shareclasses:/opt/shareclasses - /path/on/host/app:/opt/app command: java -Xshareclasses:cacheDir=/opt/shareclasses -jar /opt/app/japp.jar
构建并启动:
bashdocker-compose up -d
Dockerfile 和相关脚本根据 Apache License 2.0 许可。
镜像中安装的产品的许可证:
与所有 Docker 镜像一样,这些镜像可能还包含其他软件,这些软件可能受其他许可证(如基础发行版中的 Bash 等,以及包含的主要软件的任何直接或间接依赖项)的约束。
一些能够自动检测到的附加许可信息可以在 https://github.com/docker-library/repo-info/tree/master/repos/ibmjava 中找到。
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用符合其中包含的所有软件的相关许可。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 s390x/ibmjava 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: