运行 yum on Amazon Linux 时出错 2 - "SSL certificate problem: unable to get local issuer certificate"

Error when running yum on Amazon Linux 2 - "SSL certificate problem: unable to get local issuer certificate"

我的 工作计算机 上有一个基于最新 amazonlinux 映像 运行ning 的 Docker 容器,当我尝试 运行 yum "anything"(例如 yum updateyum install ____):

failure: repodata/repomd.xml from amzn2-core: [Errno 256] No more mirrors to try.
https://cdn.amazonlinux.com/2/core/2.0/x86_64/f915d0987d73328ab3992d03ddbce189bca8804de19d89f09b847dfcaa6bc1af/repodata/repomd.xml?instance_id=URLError&region=unknown: [Errno 14] curl#60 - "SSL certificate problem: unable to get local issuer certificate"

此问题是在公司代理(工作计算机!!1!)上造成的。一个直接的解决方案是关闭公司代理或使用家里的另一台计算机(我们都是远程的,对吧?)如果你真的手头紧。

我找到了可能的解决方案,例如 this one,它说要将代理设置添加到 /etc/yum.conf 文件。这是有道理的,但对于无状态 Docker 容器来说并不实用。当然,答案不是构建自定义版本的普通 docker 图像,这些图像具有内置的代理设置...

看来我可以 add the proxy settings to Docker 并且代理设置会自动传递给容器。这可能是要走的路。

E:我的 IT 部门能够将 URL amazonlinux.com 列入白名单,这解决了问题。我在尝试添加 EPEL 时遇到了类似的问题,解决方案是将 URL (fedoraproject.org) 添加到公司代理的 ssl 旁路组。这是必需的,因为 fedoraproject.org 正在使用 SSL pinning 来防止中间人攻击(代理就是中间人)。