Spring Boot 分层构建Docker镜像
前言
在微服务开发中,使用 Spring Boot 往往是将全部内容打入一个 fat jar 中,提供外部调用。但是在使用Docker时,因为每次构建都会将一个 fat jar 单独构建一层,导致存放Docker镜像的速度快速膨胀。为了解决这个问题,需要对如何构建Docker镜像,如何写Dockerfile及如何对Dockerfile优化进行研究。
系统环境:
- Docker 版本: 19.03.5 Docker Desktop
- 基础镜像版本: adoptopenjdk:8-jre-openj9
一、 探究常规 Spring Boot 是如何构建 Docker 镜像
这里将使用常规 Spring Boot 的配置构建一个 Docker 镜像的Dockerfile 写法,感受一下这种方式编译的镜像使用的情况。