Quarkus graalvm本机版本dockerfile安装失败

时间:2019-12-17 12:01:37

标签: docker quarkus graalvm-native-image

我想通过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 env变量。
在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

1 个答案:

答案 0 :(得分:0)

找到的不是真正的解决方案,而是解决方法。 我手动获取了该组件,并通过本地语句进行安装。  这是安装本机版本的Dockerfile片段:

### 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

可行。