【问题标题】:Quarkus graalvm native build dockerfile installation failsQuarkus graalvm native build dockerfile 安装失败
【发布时间】:2023-03-05 18:35:02
【问题描述】:

我想通过 Dockerfile 部署 quarkus 构建器映像。我们在代理后面,我将所有 linux 代理设置都设置为大写和小写。

如果我运行 Dockerfile,我会在 gu 命令安装本机映像组件时收到错误消息。以下是 Dockerfile 中完整的运行语句:

# Install GraalVM
RUN curl -fsSL https://github.com/oracle/graal/releases/download/vm-${GRAALVM_VERSION}/graalvm-ce-linux-amd64-${GRAALVM_VERSION}.tar.gz > graalvm-ce-${GRAALVM_VERSION}.tar.gz && \
    tar -xvf graalvm-ce-${GRAALVM_VERSION}.tar.gz && \
    rm -f graalvm-ce-${GRAALVM_VERSION}.tar.gz && \
    mv graalvm-ce-${GRAALVM_VERSION} /usr/lib/jvm/ && \
    cd /usr/lib/jvm && \
    ln -sfn graalvm-ce-${GRAALVM_VERSION} graalvm && \
    alternatives --install /usr/bin/java java ${GRAALVM_HOME}bin/java 97

RUN printenv
RUN ${GRAALVM_HOME}bin/gu install native-image

它返回一条错误消息,其中包含我必须设置一个 http_proxy。在该运行语句之前,我启动了一个 printenv 语句,我可以看到 http_proxy 环境变量已设置。
在 dockerfile 的那一部分之前和之后,我们下载并安装其他东西。这样可行。

唯一不起作用的是 gu 语句。

这是返回的日志消息:

Step 10/24 : RUN printenv
 ---> Running in e539ee727135
...
GRAALVM_HOME=/usr/lib/jvm/graalvm/
JAVA_HOME=/usr/lib/jvm/graalvm/
HTTP_PROXY=http://This-is-a:real@proxy.com:8080/
http_proxy=http://This-is-a:real@proxy.com:8080/
HTTPS_PROXY=http://This-is-a:real@proxy.com:8080/
https_proxy=http://This-is-a:real@proxy.com:8080/
GRAALVM_VERSION=19.2.1
...
Removing intermediate container e539ee727135
 ---> de3d463af567
Step 11/24 : RUN ${GRAALVM_HOME}bin/gu available
 ---> Running in d4a04b82279c
Downloading: Component catalog from www.graalvm.org
Error: Error downloading component catalog from https://www.graalvm.org/component-catalog/graal-updater-component-catalog.properties: Invalid argument or cannot assign requested address.
Please check your connection and proxy settings. If your machine is behind a proxy, environment variables (http_proxy, https_proxy, ...) must be set appropriately.
The command '/bin/sh -c ${GRAALVM_HOME}bin/gu install native-image' returned a non-zero code: 3

【问题讨论】:

  • 我认为值得在 GraalVM 跟踪器中打开一个问题,要求澄清这一点。

标签: docker quarkus graalvm-native-image


【解决方案1】:

找到的并不是真正的解决方案,而是一种解决方法。 我手动获取组件并通过本地语句安装它。 这是安装本机构建的 Dockerfile sn-p:

### Install GraalVM native build
RUN curl -fsL -o component.jar https://github.com/oracle/graal/releases/download/vm-${GRAALVM_VERSION}/native-image-installable-svm-linux-amd64-${GRAALVM_VERSION}.jar && \
    ${GRAALVM_HOME}bin/gu install -L component.jar && \
    rm component.jar

这行得通。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-12
    • 2021-01-17
    • 1970-01-01
    • 2023-01-11
    • 2022-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多