首页 > 解决方案 > 在 Amazon Linux 2 上运行 yum 时出错 - “SSL 证书问题:无法获取本地颁发者证书”

问题描述

我有一个基于在我的工作计算机上运行的最新 amazonlinux 映像的 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"

标签: dockerproxyyumamazon-linux-2

解决方案


此问题是使用公司代理(工作计算机!!1!)的结果。一个直接的解决方案是离开公司代理或在家中使用另一台计算机(我们都是远程的,对吗?)如果你真的很紧要关头。

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

看起来我可以将代理设置添加到 Docker,并且代理设置会自动传递给容器。这可能就是要走的路。

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


推荐阅读