寻找与openjdk:11-jre-slim对应的Java 17 Docker基础镜像
Java 17 轻量级JRE Docker镜像替代方案
官方openjdk系列镜像从Java 17起已不再提供单独的JRE slim版本,以下是体积与原openjdk:11-jre-slim(约75MB)接近的可替代方案:
- 兼容优先方案
直接使用Eclipse Adoptium维护的eclipse-temurin:17-jre-jammy镜像,压缩后体积约80MB,和原镜像体积几乎一致,基于Ubuntu 22.04 slim构建,兼容性与官方openjdk镜像完全对齐,无需修改现有Dockerfile其余逻辑即可直接替换。 - Alpine适配方案
选择eclipse-temurin:17-jre-alpine镜像,压缩后体积仅约45MB,比原镜像体积小40%。你团队已有Alpine镜像使用经验,可直接复用过往处理musl libc兼容问题的经验,适配成本极低。 - 极致体积自定义方案
如果需要进一步压缩镜像体积,可以通过jlink工具仅打包微服务依赖的JRE模块,最终镜像体积可控制在30MB以内,示例Dockerfile参考:# 构建阶段:用JDK镜像执行jlink裁剪 FROM eclipse-temurin:17-jdk-jammy AS builder RUN jlink --add-modules java.base,java.net.http,java.sql,java.xml \ --strip-debug \ --no-man-pages \ --no-header-files \ --compress=2 \ --output /custom-jre # 运行阶段:仅保留裁剪后的JRE和基础运行环境 FROM debian:bookworm-slim COPY --from=builder /custom-jre /opt/jre ENV PATH="${PATH}:/opt/jre/bin" - 注意:优先选择Eclipse Temurin、Amazon Corretto等有商业厂商长期维护的下游发行版镜像,避免使用未定期更新的第三方个人镜像,保障安全补丁及时更新。
内容的提问来源于stack exchange,提问作者David Geary
相关产品推荐
相关产品推荐

