该仓库中的镜像包含 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 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务