在我们实际生产容器化部署过程中,往往会遇到 Docker 镜像很大,部署发布很慢的情况影响 docker 镜像大小的因素,主要有以下三个方面:。我们先来基于 spring boot 2.3.0 构建一个最简单的 web helloworld,然后构建镜像。我们通过 docker inspect demo:v1.0 来看下此镜像的每层的散列值我们对 helloworld 程序进行部分修改,然后重新构建镜像此时镜像分层信息如下 docker inspect demo:v1.1通过比较 v1.0 和 v1.1 版本的镜像摘要信息,我们会发现只有最后的一层发生了变化,我们通过 默认情况下,spring boot 构建出来的 jar ,解压后可以看到如下目录结构。

Spring Boot2.3 新特性分层JAR的使用

Spring Boot2.3 新特性分层JAR的使用

Spring Boot2.3 新特性分层JAR的使用

Spring Boot2.3 新特性分层JAR的使用

Spring Boot2.3 新特性分层JAR的使用