云原生 Buildpack
Docker 镜像可以使用 Cloud Native Buildpacks 直接从 Maven 或 Gradle 插件构建。
如果您曾经使用过 Cloud Foundry 或 Heroku 等应用程序平台,那么您可能使用过 buildpack。
Buildpack 是平台的一部分,它获取您的应用程序并将其转换为平台可以实际运行的内容。
例如,Cloud Foundry 的 Java buildpack 会注意到您正在推送一个.jar
文件并自动添加相关的 JRE。
使用 Cloud Native Buildpacks,您可以创建可在任何地方运行的 Docker 兼容映像。 Spring Boot 直接包括 Maven 和 Gradle 的 buildpack 支持。 这意味着您只需键入一个命令,即可快速将合理的映像获取到本地运行的 Docker 守护程序中。
Paketo Spring Boot buildpack 支持layers.idx 文件,因此应用于它的任何图层自定义都将反映在 buildpack 创建的映像中。 |
为了实现可重现的构建和容器镜像缓存,buildpack 可以作应用程序资源元数据(例如文件的“last modified”信息)。
您应该确保您的应用程序在运行时不依赖该元数据。
Spring Boot 可以在提供静态资源时使用该信息,但这可以通过spring.web.resources.cache.use-last-modified . |