2

我正在使用adoptopenjdk/openjdk11:alpine-jrejava 的基本映像并在我的 Dockerfile 中尝试以下指令,

RUN wget -O dd-java-agent.jar "https://repository.sonatype.org/service/local/artifact/maven/redirect?r=central-proxy&g=com.datadoghq&a=dd-java-agent&v=LATEST"

这会产生错误:Connecting to repository.sonatype.org (18.208.14.211:443) wget: server returned error: HTTP/1.1 307 Temporary Redirect

有没有办法使用 Busybox 提供的 wget 实用程序从 nexus 下载最新版本的 jar 文件?

高山版本:v3.12.0 | Busybox 版本:v1.31.1

注意:如果我指定了 jar 的确切版本,就像RUN wget -O dd-java-agent.jar 'https://repository.sonatype.org/service/local/repositories/central-proxy/content/com/datadoghq/dd-java-agent/0.38.0/dd-java-agent-0.38.0.jar' 它成功一样。我知道其他选择是在这种情况下使用 curl。只是试图保持简单并避免安装 curl ,使用它,然后删除。

4

1 回答 1

1

BusyBox将 Wget替换为自己的紧凑实现,它不支持所有安全功能和选项,例如 https 重定向。更糟糕的是,BusyBox TLS 库不支持证书验证,也不支持选项--no-check-certificate. 6 年前在 Git https://github.com/sabotage-linux/sabotage/issues/252上讨论过的问题,但实际上从未修复。

除了以下之外, busybox wget没有解决方案:

  • 将真正的 wget 添加到您的构建中
  • 添加卷曲
于 2020-09-09T04:47:22.890 回答