
arm32v7/eclipse-temurinarm32v7/eclipse-temurin是针对ARM 32位架构的Eclipse Temurin官方Docker镜像,提供经Java SE TCK测试的OpenJDK二进制文件。该镜像包含由Eclipse Temurin项目构建的高质量、企业级、跨平台的开源Java运行时环境,适用于在ARM 32位架构设备上运行Java应用程序。
注:这是
eclipse-temurin官方镜像的"每架构"仓库,专门用于arm32v7架构构建。
Java 8 JDK:
8u462-b08-jdk-jammy, 8-jdk-jammy, 8-jammy8u462-b08-jdk-noble, 8-jdk-noble, 8-nobleJava 8 JRE:
8u462-b08-jre-jammy, 8-jre-jammy8u462-b08-jre-noble, 8-jre-nobleJava 11 JDK:
11.0.28_6-jdk-jammy, 11-jdk-jammy, 11-jammy11.0.28_6-jdk-noble, 11-jdk-noble, 11-nobleJava 11 JRE:
11.0.28_6-jre-jammy, 11-jre-jammy11.0.28_6-jre-noble, 11-jre-nobleJava 17 JDK:
17.0.16_8-jdk-jammy, 17-jdk-jammy, 17-jammy17.0.16_8-jdk-noble, 17-jdk-noble, 17-nobleJava 17 JRE:
17.0.16_8-jre-jammy, 17-jre-jammy17.0.16_8-jre-noble, 17-jre-nobleJava 8:
8u462-b08-jdk, 8-jdk, 8 (基于Ubuntu Noble)8u462-b08-jre, 8-jre (基于Ubuntu Noble)Java 11:
11.0.28_6-jdk, 11-jdk, 11 (基于Ubuntu Noble)11.0.28_6-jre, 11-jre (基于Ubuntu Noble)Java 17:
17.0.16_8-jdk, 17-jdk, 17 (基于Ubuntu Noble)17.0.16_8-jre, 17-jre (基于Ubuntu Noble)| 环境变量 | 描述 |
|---|---|
USE_SYSTEM_CA_CERTS | 设置为任意值以启用CA证书处理 |
JAVA_TOOL_OPTIONS | JVM启动参数,容器可能会自动添加信任存储配置 |
JRE_CACERTS_PATH | 非root用户运行时,指向自定义JVM信任存储的路径 |
可以将自定义CA证书添加到容器的信任存储中,方法如下:
/certificates目录USE_SYSTEM_CA_CERTS环境变量bashdocker run -v $(pwd)/certs:/certificates/ -e USE_SYSTEM_CA_CERTS=1 arm32v7/eclipse-temurin:17
JRE_CACERTS_PATH环境变量提供/tmp目录挂载可写卷以创建新的信任存储dockerfileFROM arm32v7/eclipse-temurin:17 RUN mkdir /opt/app COPY your-app.jar /opt/app/ CMD ["java", "-jar", "/opt/app/your-app.jar"]
构建并运行:
bashdocker build -t your-java-app . docker run -it --rm your-java-app
bashdocker run -it --rm -v $(pwd)/your-app.jar:/app.jar arm32v7/eclipse-temurin:17 java -jar /app.jar
bashdocker run -it --rm -v $(pwd)/config:/config -v $(pwd)/your-app.jar:/app.jar arm32v7/eclipse-temurin:17 java -jar /app.jar --spring.config.location=/config/
对于Java 11及以上版本,可以使用jlink创建自定义运行时镜像:
dockerfile# 构建阶段:创建自定义JRE FROM arm32v7/eclipse-temurin:17-jdk-jammy as jre-build # 创建最小化的JRE RUN $JAVA_HOME/bin/jlink \ --add-modules java.base,java.sql,java.naming,java.desktop,java.management,java.security.jgss,java.instrument \ --strip-debug \ --no-man-pages \ --no-header-files \ --compress=2 \ --output /javaruntime # 运行阶段:使用自定义JRE FROM arm32v7/ubuntu:jammy ENV JAVA_HOME=/opt/java/openjdk ENV PATH "${JAVA_HOME}/bin:${PATH}" COPY --from=jre-build /javaruntime $JAVA_HOME COPY your-app.jar /app.jar CMD ["java", "-jar", "/app.jar"]
yamlversion: '3.8' services: java-app: image: arm32v7/eclipse-temurin:17 container_name: java-service volumes: - ./your-app.jar:/app.jar - ./certs:/certificates environment: - USE_SYSTEM_CA_CERTS=1 - JAVA_OPTS=-Xmx512m restart: unless-stopped command: ["java", "-jar", "/app.jar"]
镜像中包含的其他软件可能具有不同的许可证,如基础发行版中的Bash等。用户有责任确保对该镜像的任何使用符合其中包含的所有软件的相关许可证。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务