You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker拉取镜像报错:x509:证书由未知权威机构签名(代理环境)

解决Docker拉取镜像时x509证书未知权威问题

这个问题我之前在公司代理环境里也踩过坑,核心原因就是咱们公司的代理做了中间人拦截,替换了Docker Hub的SSL证书,而Docker默认不认可代理的CA证书。下面给你几个靠谱的解决办法:

方法一:给Docker单独配置代理CA证书

  1. 先创建Docker对应镜像仓库的证书目录,Docker Hub的地址是registry-1.docker.io,执行命令:
    mkdir -p /etc/docker/certs.d/registry-1.docker.io/
    
  2. 把公司代理的CA证书(比如你手里的proxy-ca.crt)复制到这个目录里:
    cp /path/to/your/proxy-ca.crt /etc/docker/certs.d/registry-1.docker.io/
    
    记得替换成你实际的证书路径和文件名哦。
  3. 重启Docker服务让配置生效:
    systemctl restart docker
    
    对了,你之前的命令里打错成hellow-world了,实际应该是hello-world,别再写错啦~

方法二:把代理CA证书加到系统信任列表

如果公司的代理证书是全系统通用的,也可以直接加到系统的CA信任池里,这样所有应用都能识别:

针对RHEL/CentOS系统:

  1. 复制证书到系统锚点目录:
    cp /path/to/your/proxy-ca.crt /etc/pki/ca-trust/source/anchors/
    
  2. 更新系统信任证书:
    update-ca-trust extract
    
  3. 同样重启Docker服务:
    systemctl restart docker
    

额外检查:确认Docker代理配置正确

别忘了确认你的Docker代理配置是对的,编辑/etc/docker/daemon.json(没有的话就新建),内容类似:

{
  "proxies": {
    "default": {
      "httpProxy": "http://your-company-proxy:port",
      "httpsProxy": "https://your-company-proxy:port",
      "noProxy": "localhost,127.0.0.1,your-internal-domains"
    }
  }
}

填好公司的代理地址和端口,还有不需要走代理的内部域名,保存后重启Docker就行。

内容的提问来源于stack exchange,提问作者Sadique Manzar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:37:54