首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Bazel将图像库从JDK 11更改为JDK 8

Bazel将图像库从JDK 11更改为JDK 8
EN

Stack Overflow用户
提问于 2021-09-03 18:07:41
回答 1查看 306关注 0票数 0

我正在尝试使用bazel为建筑农场构建一个定制的码头映像。我对巴泽尔还是很陌生的,所以从码头到巴泽尔的很多事情让我很困惑。

由于某些错误,我想要运行JDK 8,而不是JDK 11。

代码语言:javascript
运行
复制
base = "@java_image_base//image"

在某种程度上类似于:

代码语言:javascript
运行
复制
FROM openjdk:11

在码头文件里。但是,我想使用JDK 8的基本映像。

我试图构建的BUILD文件中的bazel目标是:

代码语言:javascript
运行
复制
container_image(
    name = "server.container",
    base = "@java_image_base//image",
    cmd = [
        "buildfarm-server_deploy.jar",
        "/config/server.config",
        "--port",
        "8980",
    ],
    # leverage the implicit target of the buildfarm-server to get a fat jar.
    # this is simply a workaround for the fact that we have so many dependencies,
    # so we'd want some wrappy script. This seemed more straightforward.
    # https://docs.bazel.build/versions/master/be/java.html#java_binary_implicit_outputs
    files = [
        ":buildfarm-server_deploy.jar",
    ],
    tags = ["container"],
    visibility = ["//visibility:public"],
)

后续问题:一般情况下,如何查找bazel container_image目标的其他基本图像?除了bazel基础图像之外,还有类似于Dockerhub的东西吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-04 12:19:55

base in container_image必须是表示图像的Bazel目标,即:

  • 使用其他Bazel规则在本地构建图像
  • container_import从本地tarball导入的图像
  • 使用container_pull从远程码头存储库中提取的图像

如果您正在寻找FROM的简单替代,那么您可能希望使用container_pull在您的WORKSPACE中提取正确的图像,并使用它作为基础。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69049058

复制
相关文章

相似问题

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