AdoptOpenJDK Docker镜像如何选择更高Alpine小版本修复CVE-2021-36159漏洞
是否可以选择搭载更高Alpine小版本的AdoptOpenJDK镜像
可以。AdoptOpenJDK官方维护的openjdk11镜像仓库中,后续更新的JRE 11版本标签均已将底层Alpine基础镜像升级至3.14.1及以上的修复版本,直接替换原有镜像标签即可完成漏洞修复,无需调整其他Dockerfile逻辑。
安全风险缓解方案
- 方案一:直接替换基础镜像标签
优先选择官方发布的同JRE大版本下、更新时间更晚的alpine后缀镜像,比如adoptopenjdk/openjdk11:jre-11.0.11_9-alpine及更高版本标签的镜像均已完成Alpine小版本升级,适配成本最低。 - 方案二:在现有镜像内手动升级Alpine系统包
如果暂时无法更换基础镜像,可在原有Dockerfile的FROM语句后添加Alpine包升级命令,示例如下:
该命令会将镜像内所有系统包升级到当前Alpine大版本下的最新安全修复版本,可直接修复CVE-2021-36159漏洞。FROM adoptopenjdk/openjdk11:jre-11.0.10_9-alpine RUN apk update && apk upgrade --no-cache - 方案三:切换至非Alpine版本的OpenJDK基础镜像
如果业务对Alpine版本没有强依赖,也可以暂时切换到同版本的Debian系JRE镜像,比如adoptopenjdk/openjdk11:jre-11.0.10_9,完全规避Alpine相关的漏洞影响。
提示:所有修改完成后建议重新构建镜像并做漏洞扫描,确认漏洞已被修复再上线使用。
内容的提问来源于stack exchange,提问作者mosh
相关产品推荐
相关产品推荐

