Docker构建在私有托管代理上失败(Azure DevOps)

时间:2020-05-21 08:02:22

标签: docker azure-devops debian-buster

我正在尝试在私有代理的Azure DevOps代理上构建dockerfile,该代理位于公司代理之后。基本映像是python / 3.8.3-slim-buster。当我运行apt-get update时,出现以下错误:

Err:1 http://deb.debian.org/debian buster InRelease
  470  status code 470 [IP: 151.101.36.204 80]
Err:2 http://security.debian.org/debian-security buster/updates InRelease
  470  status code 470 [IP: 151.101.36.204 80]
Err:3 http://deb.debian.org/debian buster-updates InRelease
  470  status code 470 [IP: 151.101.36.204 80]
Reading package lists...
E: The repository 'http://deb.debian.org/debian buster InRelease' is not signed.
E: Failed to fetch http://deb.debian.org/debian/dists/buster/InRelease  470  status code 470 [IP: 151.101.36.204 80]
E: Failed to fetch http://security.debian.org/debian-security/dists/buster/updates/InRelease  470  status code 470 [IP: 151.101.36.204 80]
E: The repository 'http://security.debian.org/debian-security buster/updates InRelease' is not signed.
E: Failed to fetch http://deb.debian.org/debian/dists/buster-updates/InRelease  470  status code 470 [IP: 151.101.36.204 80]
E: The repository 'http://deb.debian.org/debian buster-updates InRelease' is not signed.

现在最棘手的部分是,如果我手动登录到此代理,然后在此处输入docker build命令,它将正常工作。在Microsoft托管代理上构建也可以正常工作。

我将带有--build-arg标志的代理配置传递给Dockerfile。

有人知道错误可能在哪里吗?

编辑: 我尝试添加“ --allow-releaseinfo-change”标志,但仍然是相同的错误。我有某种感觉,它与代理相关,但不知道从哪里开始寻找。

1 个答案:

答案 0 :(得分:1)

今天,我了解到apt-get将代理配置保留在其他位置,因为在我的环境变量HTTP_PROXY和HTTPS_PROXY中没有使用。

创建proxy.conf并将其复制到容器解决了我在这里提到的问题: https://www.serverlab.ca/tutorials/linux/administration-linux/how-to-set-the-proxy-for-apt-for-ubuntu-18-04/