【问题标题】:Buildpacks Distroless runtime image supportBuildpacks Distroless 运行时映像支持
【发布时间】:2021-10-28 20:37:11
【问题描述】:

是否可以将distroless 图像与构建包一起使用?

【问题讨论】:

    标签: buildpack paketo


    【解决方案1】:

    这不一定是一个简单的问题,它取决于。

    您可以创建一个 custom stackcustom builder,您可以使用 distroless。

    如果您不确定这些 buildpack 术语,堆栈会提供用于构建和运行应用程序的基础映像。构建器是堆栈加上可以在该堆栈上运行的一组构建包的组合。

    所以理论上,您的问题的答案是肯定的。难以回答的地方是您没有说明您需要运行的应用程序(语言/运行时?)或构建包(heroku、paketo 等?)。您的应用程序、语言运行时和构建包将需要能够在 distroless 上运行,这并非易事,因为它是一个极其简陋的容器映像。

    简而言之,您需要更新问题以提供有关您的应用和要运行的构建包的更多详细信息,以获得更明确的答案。


    在这里猜测一下,如果您正在运行 Paketo buildpacks,我可以说 Paketo 提供了一个类似于 distroless 的“小”映像(小于 20M)。您可以 a.) 考虑使用小堆栈,因为所有的繁重工作都已为您完成 或 b.) 如果您真的需要 distroless,您可以尝试将您的工作基于小堆栈。因为这也是一个精简的镜像,所以您可以在 tiny 上运行的 buildpack 和应用程序可能与您可以在 distroless 上运行的类似。

    你可以找到tiny builder definition here,你可以找到tiny stack releases heretiny stack source here

    【讨论】:

    • 感谢您的快速响应。对不起,我忘了提供更多细节。你是对的,我正在使用 paketo 小堆栈。但我遇到了问题。这是一个简单的 Spring Boot 应用程序。根据文档,它说它支持 Java,但我不认为它不支持,因为构建器没有 java buildpack。 ``` 错误:没有构建包组通过检测。错误:请检查您是否在正确的路径上运行。错误:检测失败:没有参与的构建包错误:构建失败:执行生命周期:失败,状态码:20 ```
    • 所以我切换到使用 procfile,它成功构建了映像,但是当我运行 docker 时遇到了问题,因为它没有 java ``` 错误:启动失败:路径查找:exec: “java”:在 $PATH ``` 中找不到可执行文件这是用于测试的示例 repo:github.com/heroku/java-getting-started
    • 它应该在基础堆栈上工作。该示例中的Procfile 不需要并且会破坏,如果您使用的是 Paketo buildpacks,它的启动命令不正确。只需删除文件和pack build 它应该可以工作。小堆栈应该可以工作,但不能,这是我的疏忽。构建器应该包含 Java buildpack,但它没有,抱歉。我会为此申请公关。同时,运行pb java-getting-started -B paketobuildpacks/builder:tiny -b paketo-buildpacks/java。 Procfile 也是如此,删除它。那会起作用的。
    • 感谢@daniel-mikusa,通过将Java Buildpack 添加到微型构建器中,我能够使Java 应用程序正常工作。他们是否有计划支持带有像github.com/GoogleContainerTools/distroless/tree/main/nodejs 这样的小堆栈的nodejs 应用程序。我愿意为 paketo 做出贡献,我只需要一些有关如何使用 builder 调试 buildpack 的文档,如果您有详细信息可以与我分享吗
    • 我不了解 Node.js。我不在那些构建包上工作。至于如何调试,我建议你加入我们的 Slack,在那里讨论类似的东西会更容易,或者提出新的问题。 paketobuildpacks.slack.com.
    猜你喜欢
    • 2022-09-24
    • 1970-01-01
    • 2022-01-18
    • 2021-07-11
    • 2021-09-22
    • 2020-05-28
    • 2022-11-07
    • 2020-01-26
    • 1970-01-01
    相关资源
    最近更新 更多