Appearance
OpenJDK 镜像大规模清理事件
1. OpenJDK 镜像拉取报错
最近在使用 openjdk:8-jdk-alpine 镜像时,很多人遇到了拉取失败的问题:
docker pull openjdk:8-jdk-alpine→ not founddocker pull openjdk:17-jdk-alpine→ missing manifest
其他旧版本标签也可能直接消失,导致生产环境构建失败。
追溯原因,来自于 docker-library/openjdk #550 PR 的合并与后续操作。
2. 发生了什么?
移除误导性的 “bare” 别名
例如
openjdk:26这样的标签会让人误以为 GA 已发布,但实际上只是 EA/RC 版本。删除长期未维护的内容
- Alpine 支持(最后一次官方支持在 2022 年);
- JRE 支持(同样在 2022 年停止)。
大规模删除 Docker Hub 上的旧标签
删除范围包括所有非历史版本(如
11.0.6)或非 EA/RC 标签。结果是约 6.5% 的 16,288 个标签被清理掉。
3. 官方建议替代方案
作者在 PR 评论中明确给出替代路径:
推荐优先使用 Eclipse Temurin 镜像
openjdk:8→eclipse-temurin:8openjdk:11→eclipse-temurin:11openjdk:17→eclipse-temurin:17openjdk:21→eclipse-temurin:21openjdk:25→eclipse-temurin:25
使用更具体的旧版本标签(不推荐,仅应急)
openjdk:8→openjdk:8u342openjdk:11→openjdk:11.0.16openjdk:17→openjdk:17.0.2- 其他类似的
openjdk:<version>精确标签
自行构建镜像
如果必须依赖旧版本,可考虑自己编译并维护。