快速参考
-
由……维护
“Adoptium”可翻译为“艾德普提姆” -
何处获取帮助:
Adoptium 松弛;Adoptium 支持
支持的标签及相应的 Dockerfile 链接
(见常见问题解答中“‘共享’和‘简单’标签之间的区别是什么?”)
简单标签
-
8u422-b05-jdk-ubi9-minimal,8-jdk-ubi9-minimal,8-ubi9-minimal -
8u422-b05-jdk-nanoserver-ltsc2022,8-jdk-nanoserver-ltsc2022,8-nanoserver-ltsc2022 -
8u422-b05-jdk-windowsservercore-1809,8-jdk-windowsservercore-1809,8-windowsservercore-1809 -
8u422-b05-jdk-nanoserver-1809,8-jdk-nanoserver-1809,8-nanoserver-1809 -
8u422-b05-jre-windowsservercore-ltsc2022,8-jre-windowsservercore-ltsc2022 -
8u422-b05-jre-nanoserver-ltsc2022,8-jre-nanoserver-ltsc2022 -
8u422-b05-jre-windowsservercore-1809,8-jre-windowsservercore-1809 -
11.0.24_8-jdk-ubi9-minimal,11-jdk-ubi9-minimal,11-ubi9-minimal -
11.0.24_8-jdk-nanoserver-ltsc2022,11-jdk-nanoserver-ltsc2022,11-nanoserver-ltsc2022 -
11.0.24_8-jdk-windowsservercore-1809,11-jdk-windowsservercore-1809,11-windowsservercore-1809 -
11.0.24_8-jdk-nanoserver-1809,11-jdk-nanoserver-1809,11-nanoserver-1809 -
11.0.24_8-jre-windowsservercore-ltsc2022,11-jre-windowsservercore-ltsc2022 -
11.0.24_8-jre-nanoserver-ltsc2022,11-jre-nanoserver-ltsc2022 -
11.0.24_8-jre-windowsservercore-1809,11-jre-windowsservercore-1809 -
17.0.12_7-jdk-ubi9-minimal,17-jdk-ubi9-minimal,17-ubi9-minimal -
17.0.12_7-jdk-nanoserver-ltsc2022,17-jdk-nanoserver-ltsc2022,17-nanoserver-ltsc2022 -
17.0.12_7-jdk-windowsservercore-1809,17-jdk-windowsservercore-1809,17-windowsservercore-1809 -
17.0.12_7-jdk-nanoserver-1809,17-jdk-nanoserver-1809,17-nanoserver-1809 -
17.0.12_7-jre-windowsservercore-ltsc2022,17-jre-windowsservercore-ltsc2022 -
17.0.12_7-jre-nanoserver-ltsc2022,17-jre-nanoserver-ltsc2022 -
17.0.12_7-jre-windowsservercore-1809,17-jre-windowsservercore-1809 -
21.0.4_7-jdk-ubi9-minimal,21-jdk-ubi9-minimal,21-ubi9-minimal -
21.0.4_7-jdk-nanoserver-ltsc2022,21-jdk-nanoserver-ltsc2022,21-nanoserver-ltsc2022 -
21.0.4_7-jdk-windowsservercore-1809,21-jdk-windowsservercore-1809,21-windowsservercore-1809 -
21.0.4_7-jdk-nanoserver-1809,21-jdk-nanoserver-1809,21-nanoserver-1809 -
21.0.4_7-jre-windowsservercore-ltsc2022,21-jre-windowsservercore-ltsc2022 -
21.0.4_7-jre-nanoserver-ltsc2022,21-jre-nanoserver-ltsc2022 -
21.0.4_7-jre-windowsservercore-1809,21-jre-windowsservercore-1809 -
23_37-jdk-ubi9-minimal,23-jdk-ubi9-minimal,23-ubi9-minimal -
23_37-jdk-windowsservercore-1809,23-jdk-windowsservercore-1809,23-windowsservercore-1809 -
23_37-jre-windowsservercore-ltsc2022,23-jre-windowsservercore-ltsc2022 -
23_37-jre-windowsservercore-1809,23-jre-windowsservercore-1809
共享标签
-
8u422-b05-jdk,8-jdk,8:8u422-b05-jdk-noble8u422-b05-jdk-windowsservercore-ltsc20228u422-b05-jdk-windowsservercore-1809-
8u422-b05-jdk-windowsservercore,8-jdk-windowsservercore,8-windowsservercore: 8u422-b05-jdk-windowsservercore-1809-
8u422-b05-jdk-nanoserver,8-jdk-nanoserver,8-nanoserver: 8u422-b05-jdk-nanoserver-1809-
8u422-b05-jre,8-jre: 8u422-b05-jre-windowsservercore-ltsc20228u422-b05-jre-windowsservercore-1809-
8u422-b05-jre-windowsservercore,8-jre-windowsservercore: 8u422-b05-jre-windowsservercore-1809-
8u422-b05-jre-nanoserver,8-jre-nanoserver: 8u422-b05-jre-nanoserver-1809-
11.0.24_8-jdk,11-jdk,11: 11.0.24_8-jdk-windowsservercore-ltsc202211.0.24_8-jdk-windowsservercore-1809-
11.0.24_8-jdk-windowsservercore,11-jdk-windowsservercore,11-windowsservercore: 11.0.24_8-jdk-windowsservercore-1809-
11.0.24_8-jdk-nanoserver,11-jdk-nanoserver,11-nanoserver: 11.0.24_8-jdk-nanoserver-1809-
11.0.24_8-jre,11-jre: 11.0.24_8-jre-windowsservercore-ltsc202211.0.24_8-jre-windowsservercore-1809-
11.0.24_8-jre-windowsservercore,11-jre-windowsservercore: 11.0.24_8-jre-windowsservercore-1809-
11.0.24_8-jre-nanoserver,11-jre-nanoserver: 11.0.24_8-jre-nanoserver-1809-
17.0.12_7-jdk,17-jdk,17: 17.0.12_7-jdk-windowsservercore-ltsc202217.0.12_7-jdk-windowsservercore-1809-
17.0.12_7-jdk-windowsservercore,17-jdk-windowsservercore,17-windowsservercore: 17.0.12_7-jdk-windowsservercore-1809-
17.0.12_7-jdk-nanoserver,17-jdk-nanoserver,17-nanoserver: 17.0.12_7-jdk-nanoserver-1809-
17.0.12_7-jre,17-jre: 17.0.12_7-jre-windowsservercore-ltsc202217.0.12_7-jre-windowsservercore-1809-
17.0.12_7-jre-windowsservercore,17-jre-windowsservercore: 17.0.12_7-jre-windowsservercore-1809-
17.0.12_7-jre-nanoserver,17-jre-nanoserver: 17.0.12_7-jre-nanoserver-1809-
21.0.4_7-jdk,21-jdk,21,latest: 21.0.4_7-jdk-windowsservercore-ltsc202221.0.4_7-jdk-windowsservercore-1809-
21.0.4_7-jdk-windowsservercore,21-jdk-windowsservercore,21-windowsservercore: 21.0.4_7-jdk-windowsservercore-1809-
21.0.4_7-jdk-nanoserver,21-jdk-nanoserver,21-nanoserver: 21.0.4_7-jdk-nanoserver-1809-
21.0.4_7-jre,21-jre: 21.0.4_7-jre-windowsservercore-ltsc202221.0.4_7-jre-windowsservercore-1809-
21.0.4_7-jre-windowsservercore,21-jre-windowsservercore: 21.0.4_7-jre-windowsservercore-1809-
21.0.4_7-jre-nanoserver,21-jre-nanoserver: 21.0.4_7-jre-nanoserver-1809-
23_37-jdk,23-jdk,23: 23_37-jdk-windowsservercore-ltsc202223_37-jdk-windowsservercore-1809-
23_37-jdk-windowsservercore,23-jdk-windowsservercore,23-windowsservercore: 23_37-jdk-windowsservercore-1809-
23_37-jre,23-jre: 23_37-jre-windowsservercore-ltsc202223_37-jre-windowsservercore-1809-
23_37-jre-windowsservercore,23-jre-windowsservercore: 23_37-jre-windowsservercore-1809
快速参考(续)
-
在哪里提交问题:
GitHub;Adoptium 支持页面有关于 Eclipse Temurin 构建的质量、路线图和支持级别等更多信息。与 Eclipse Temurin 本身无关的漏洞应提交给各自的项目(例如,Ubuntu 漏洞需要直接提交给 Ubuntu 项目)。 -
支持的架构:(更多信息)
amd64,arm32v7,arm64v8,ppc64le,riscv64,s390x,windows-amd64 -
已发布的图像工件详细信息:
仓库信息 仓库的repos/eclipse-temurin/目录(历史)
(图像元数据、传输大小等) -
图像更新:
官方镜像仓库的library/eclipse-temurin标签
官方镜像仓库的library/eclipse-temurin文件(历史记录) -
此描述的来源:
文档库的eclipse-temurin/目录(历史)
概述
此存储库中的图像包含由 Eclipse Temurin 构建的 OpenJDK 二进制文件。
什么是 Eclipse Temurin?
Eclipse Temurin 项目提供代码和流程,支持构建高性能、企业级、跨平台、开源许可且经过 Java SE TCK 测试的运行时二进制文件及相关技术,以供在整个 Java 生态系统中普遍使用。

你们提供 JRE(Java 运行时环境)镜像吗?
JRE 镜像可用于所有版本的 Eclipse Temurin,但建议你使用 jlink 生成一个类似自定义 JRE 的运行时(见下面的用法)。
我可以将我的内部 CA 证书添加到信任库吗?
是的!将您的证书添加到容器内的 /certificates (例如通过使用卷),并将容器上的环境变量 USE_SYSTEM_CA_CERTS 设置为任何值。使用 Docker CLI 时,这可能看起来像这样:
$ docker run -v $(pwd)/certs:/certificates/ -e USE_SYSTEM_CA_CERTS=1 eclipse-temurin:21
证书将被添加到系统 CA 存储中,而系统 CA 存储又将被转换为 Java 的信任存储。证书的格式取决于所使用的基础镜像的操作系统期望的格式,但带有 .crt 文件扩展名的 PEM 格式是一个不错的选择。请注意:此功能当前不适用于基于 Windows 的镜像。
如何使用此图像
要使用最新的 OpenJDK 21 运行预构建的 jar 文件,请使用以下 Dockerfile:
FROM eclipse-temurin:21
RUN mkdir /opt/app
COPY japp.jar /opt/app
CMD ["java", "-jar", "/opt/app/japp.jar"]
您可以按照以下示例构建和运行 Docker 镜像:
docker build -t japp .
docker run -it --rm japp
使用不同的基础镜像
如果您使用的发行版我们没有为您提供镜像,您可以使用与下面类似的 Dockerfile 来复制 JDK:
# Example
FROM <base image>
ENV JAVA_HOME=/opt/java/openjdk
COPY --from=eclipse-temurin:21 $JAVA_HOME $JAVA_HOME
ENV PATH="${JAVA_HOME}/bin:${PATH}"
使用 jlink 创建 JRE
在 OpenJDK 11+上,可以使用 jlink 生成一个 JRE,参见以下 Dockerfile:
# Example of custom Java runtime using jlink in a multi-stage container build
FROM eclipse-temurin:21 as jre-build
# Create a custom Java runtime
RUN $JAVA_HOME/bin/jlink \
--add-modules java.base \
--strip-debug \
--no-man-pages \
--no-header-files \
--compress=2 \
--output /javaruntime
# Define your base image
FROM debian:buster-slim
ENV JAVA_HOME=/opt/java/openjdk
ENV PATH "${JAVA_HOME}/bin:${PATH}"
COPY --from=jre-build /javaruntime $JAVA_HOME
# Continue with your application deployment
RUN mkdir /opt/app
COPY japp.jar /opt/app
CMD ["java", "-jar", "/opt/app/japp.jar"]
如果你想将 jar 文件放置在主机文件系统上而不是容器内部,你可以使用以下命令将主机路径挂载到容器上:
FROM eclipse-temurin:21.0.2_13-jdk
CMD ["java", "-jar", "/opt/app/japp.jar"]
docker build -t japp .
docker run -it -v /path/on/host/system/jars:/opt/app japp
图像变体
eclipse-temurin 图像有多种类型,每种都针对特定的用例而设计。
eclipse-temurin:<version>
这是事实上的镜像。如果你不确定自己的需求是什么,你可能想要使用这个。它被设计既可用作一次性容器(挂载你的源代码并启动容器以启动你的应用程序),也可用作构建其他镜像的基础。
其中一些标签可能包含诸如 focal、jammy 或 noble 之类的名称。这些是 Ubuntu 发布版的套件代号,表明该镜像基于哪个发布版。如果你的镜像需要安装除镜像自带内容之外的任何其他软件包,你可能希望明确指定其中之一,以便在 Ubuntu 有新版本发布时最大程度地减少损坏。
eclipse-temurin:<version>-alpine
此镜像基于流行的 Alpine Linux 项目,在 alpine 官方镜像中可用。Alpine Linux 比大多数发行版基础镜像小得多(约 5MB),因此通常会生成更精简的镜像。
当尽可能小的最终镜像大小是你主要关心的问题时,这个变体很有用。需要注意的主要警告是,它确实使用 musl libc 而不是 glibc 及其同类,所以软件通常会根据其对 libc 要求/假设的深度而遇到问题。有关可能出现的问题以及使用基于 Alpine 的镜像的一些优缺点比较的更多讨论,请参阅此 Hacker News 评论线程。
为了最小化镜像大小,在基于 Alpine 的镜像中包含额外的相关工具(例如 git 或 bash )是不常见的。使用此镜像作为基础,在你自己的 Dockerfile 中添加你需要的东西(如果你不熟悉,可查看 alpine 镜像描述以获取如何安装软件包的示例)。
eclipse-temurin:<version>-windowsservercore
此图像基于 Windows Server Core( microsoft/windowsservercore )。因此,它仅在该图像适用的地方起作用,例如 Windows 10 专业版/企业版(周年纪念版)或 Windows Server 2016。
有关如何在 Windows 上运行 Docker 的信息,请参阅 Microsoft 提供的相关“快速入门”指南:
许可证
Dockerfiles 及相关脚本根据 Apache 许可证 2.0 版获得许可。
映像中安装的产品的许可证:
- OpenJDK:项目许可证是带有类路径异常的 GNU GPL v2。
与所有 Docker 镜像一样,这些镜像可能还包含其他可能受其他许可证约束的软件(例如来自基础发行版的 Bash 等,以及所包含的主要软件的任何直接或间接依赖项)。
一些能够自动检测到的额外许可证信息可能会在 repo-info 存储库的 eclipse-temurin/ 目录中找到。
对于任何预构建镜像的使用,镜像用户有责任确保对此镜像的任何使用都符合其中包含的所有软件的任何相关许可证。