首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带/cnb的构建包2.3.0.M3 :仿生缓存jdk,无需在每次运行时下载

带/cnb的构建包2.3.0.M3 :仿生缓存jdk,无需在每次运行时下载
EN

Stack Overflow用户
提问于 2020-03-22 20:36:27
回答 1查看 733关注 0票数 1

我有一个spring-boot gradle REST应用程序,希望用https://buildpacks.io/ pack创建一个与OCI一致的映像。

代码语言:javascript
复制
pack -v build minimal_rest --builder cloudfoundry/cnb:bionic

在任何执行过程中,它都会重新下载jdk作为“对层的贡献”。

代码语言:javascript
复制
===> BUILDING
[builder]
[builder] Cloud Foundry OpenJDK Buildpack v1.2.14
[builder]   OpenJDK JDK 11.0.6: Contributing to layer
[builder]     Downloading from https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.6%!B(MISSING)10/OpenJDK11U-jdk_x64_linux_hotspot_11.0.6_10.tar.gz

有没有一种方法来“缓存”贡献层,这样它们就不会在每次运行时被重新下载?

+:

我在org.springframework.boot插件中使用了spring 2.3.0.M3和gradle 6.2.1 (也是v2.3.0.M3)。

打电话

代码语言:javascript
复制
./gradlew clean build -x test bootBuildImage

使用

代码语言:javascript
复制
tasks {
    bootJar {
        val archivesBaseName: String by project.extra
        archiveBaseName.set(archivesBaseName)
        manifest {
            attributes["Implementation-Title"] = project.name
            attributes["Implementation-Version"] = v.version
            attributes["provider"] = "gradle"
        }
    }
    bootBuildImage {
        builder = "cloudfoundry/cnb:bionic"
        val archivesBaseName: String by project.extra
        imageName = archivesBaseName
    }
}

我终于得到了:

代码语言:javascript
复制
Execution failed for task ':bootBuildImage'.
> Detected platform API version 'v0.3' is not included in supported versions 'v0.1,v0.2'

但是使用cloudfoundry/cnb:只有2天的仿生(2020年3月20日)

对此也有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-24 07:51:00

因此,我得到了他们松懈的渠道的答案(至少在第一部分)。

在和--clear-cache进行了一次无过失的跑步之后.pack现在缓存jdk,并且不会在每次运行时下载jdk。(在连续运行时肯定不会传递--清除缓存)

此外,在您的项目根dir中,您可以问pack本身它“推荐”了哪些构建者:

代码语言:javascript
复制
$ pack suggest-builders
Suggested builders:
    Cloud Foundry:     cloudfoundry/cnb:bionic         Ubuntu bionic base image with buildpacks for Java, NodeJS and Golang
    Cloud Foundry:     cloudfoundry/cnb:cflinuxfs3     cflinuxfs3 base image with buildpacks for Java, .NET, NodeJS, Python, Golang, PHP, HTTPD and NGINX
    Cloud Foundry:     cloudfoundry/cnb:tiny           Tiny base image (bionic build image, distroless run image) with buildpacks for Golang
    Heroku:            heroku/buildpacks:18            heroku-18 base image with buildpacks for Ruby, Java, Node.js, Python, Golang, & PHP

Tip: Learn more about a specific builder with:
    pack inspect-builder [builder image]
代码语言:javascript
复制
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60804676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档