本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
由 The SapMachine Team(SAP 官方团队)维护。
可通过邮件 *** 获取官方支持。
标签命名规则:Java版本-组件类型-基础镜像-基础镜像版本,核心分类如下(简化高频标签,完整列表见 Docker Hub):
Java 11(LTS)标签:
Java 17(LTS)标签:
Java 21(LTS)标签:
Java 25 标签:
SapMachine GitHub 仓库:[***] SapMachine Wiki 获取更多信息)
amd64(x86-64)、arm64v8(ARM 64 位)、ppc64le(PowerPC 64 位小端序)
包含元数据、传输大小等信息,可查看 repo-info 仓库的 repos/sapmachine/ 目录(历史记录)。
docs 仓库的 sapmachine/ 目录(历史记录)
SapMachine 是 SAP 推出的 OpenJDK 官方兼容分发版,核心特性如下:
直接拉取镜像并运行 java -version 验证环境:
# 拉取最新 LTS 版本(如 Java 21) docker pull library/sapmachine:latest # 运行容器并查看 Java 版本 docker run -it --rm library/sapmachine:latest java -version # 输出示例:openjdk version "21.0.8" 2024-07-16 LTS # SapMachine Runtime Environment (build 21.0.8+9-LTS) # OpenJDK 64-Bit Server VM (build 21.0.8+9-LTS, mixed mode)
创建 Dockerfile,基于 SapMachine 部署预编译的 JAR 包(如 myapp.jar):
# 选择 Java 17 LTS 的 JDK 镜像(Ubuntu Jammy 基础,兼容性更广) FROM library/sapmachine:17-jdk-ubuntu-jammy # 创建应用目录(避免权限问题,使用非 root 用户) RUN mkdir -p /opt/myapp && chown -R sapmachine:sapmachine /opt/myapp USER sapmachine # 复制 JAR 包到容器 COPY --chown=sapmachine:sapmachine myapp.jar /opt/myapp/ # 启动命令(运行 JAR 包) CMD ["java", "-jar", "/opt/myapp/myapp.jar"]
构建并运行镜像:
# 构建镜像(标签为 my-java-app) docker build -t my-java-app . # 后台运行容器(映射端口 8080) docker run -d -p 8080:8080 --name my-app-container my-java-app
Alpine 基础镜像体积仅约 5MB,适合追求镜像轻量化的场景(注意:Alpine 使用 musl libc,部分依赖 glibc 的 Java 库需适配):
# 选择 Java 21 LTS 的 JRE-headless 镜像(无 GUI,更轻量) FROM library/sapmachine:21-jre-headless-alpine-3.22 # 复制 JAR 包(Alpine 镜像默认使用 root 用户,可按需调整) COPY myapp.jar /opt/ # 启动命令(限制 JVM 内存,适配容器环境) CMD ["java", "-Xmx512m", "-jar", "/opt/myapp.jar"]
构建运行:
docker build -t my-lightweight-app . docker run -it --rm -p 8080:8080 my-lightweight-app
SapMachine 镜像提供多种变体,需根据场景选择:
JDK
JRE
JDK-headless
JRE-headless
Ubuntu 基础
Alpine 基础
使用前请确保遵守所有包含软件的许可条款,商业场景需确认 GPLv2 Classpath Exception 的适用范围(详见 SapMachine 许可页面 [***]
免费版仅支持 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