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

Docker入门报错:获取OAuth令牌失败 - 证书验证问题

解决WSL2环境下Docker拉取镜像的x509证书验证错误

方法1:临时配置Docker跳过证书验证(应急用)

  • 打开WSL2的Docker配置文件,路径为/etc/docker/daemon.json,如果文件不存在就直接创建
  • 写入以下配置内容:
{
  "insecure-registries": ["docker.io"]
}
  • 重启Docker服务生效:
sudo systemctl restart docker

注意:这个方法会关闭对docker.io的证书校验,仅适合测试环境或信任当前网络的场景,不建议长期使用

方法2:同步Windows根证书到WSL2

WSL2的证书存储和Windows独立,若Windows使用了企业/代理证书,需要同步到WSL2:

  1. 在Windows系统打开「证书管理器」,找到「受信任的根证书颁发机构」,导出相关证书为Base64编码的CER格式
  2. 将导出的CER文件复制到WSL2的/usr/local/share/ca-certificates/目录下
  3. 执行证书更新命令:
sudo update-ca-certificates
  1. 重启Docker服务:
sudo systemctl restart docker

方法3:修复WSL2的代理配置

如果Windows使用了代理,WSL2的代理设置可能未同步导致证书验证失败:

  • 先查看当前代理环境变量:
echo $HTTP_PROXY
echo $HTTPS_PROXY
  • 若代理地址不正确,临时设置(替换成你的Windows主机IP和代理端口):
export HTTP_PROXY=http://192.168.x.x:端口号
export HTTPS_PROXY=http://192.168.x.x:端口号
  • 要永久生效,把配置写入shell配置文件(比如~/.bashrc,如果用zsh就写~/.zshrc):
echo "export HTTP_PROXY=http://192.168.x.x:端口号" >> ~/.bashrc
echo "export HTTPS_PROXY=http://192.168.x.x:端口号" >> ~/.bashrc
source ~/.bashrc

提示:Windows主机IP可以在WSL2里执行cat /etc/resolv.conf,取nameserver对应的IP

内容的提问来源于stack exchange,提问作者Jersey Dude

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 20:37:07