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

无法从container-registry.oracle.com拉取Oracle标准DB镜像的求助

解决Docker登录container-registry.oracle.com时的域名解析失败问题

调试思路

  • 在WSL2的Ubuntu终端执行 ping container-registry.oracle.com,确认域名是否能正常解析。如果ping不通,说明核心问题是域名解析失败;如果能ping通,再排查Docker的网络配置。
  • 测试基础网络连通性:执行 ping google.com,如果也无法解析,说明WSL2的整体DNS配置存在问题;如果能正常解析,说明是Oracle镜像仓库域名的解析特殊问题。
  • 查看WSL2的DNS配置:执行 cat /etc/resolv.conf,检查其中的DNS服务器地址是否有效。

解决步骤

1. 修复WSL2的DNS解析问题

  • 先备份原DNS配置文件:
    sudo cp /etc/resolv.conf /etc/resolv.conf.bak
    
  • 手动配置公共DNS服务器:
    sudo bash -c 'echo "nameserver 8.8.8.8" > /etc/resolv.conf'
    sudo bash -c 'echo "nameserver 1.1.1.1" >> /etc/resolv.conf'
    
  • 防止WSL2重启后覆盖DNS配置:创建 /etc/wsl.conf 文件并添加以下内容:
    [network]
    generateResolvConf = false
    
  • 重启WSL2:在Windows的命令提示符(CMD)中执行 wsl --shutdown,之后重新打开Ubuntu终端。

2. 配置网络代理(如果Windows使用了代理)

  • 在Ubuntu终端中临时设置代理环境变量(替换为你的代理地址和端口):
    export HTTP_PROXY=http://172.17.0.1:7890
    export HTTPS_PROXY=http://172.17.0.1:7890
    
    注:172.17.0.1 是WSL2默认的Windows网关地址,你也可以通过Windows的网络适配器查看WSL虚拟网卡的具体地址。
  • 配置Docker全局代理:创建或编辑 ~/.docker/config.json 文件,添加以下内容(替换为实际代理信息):
    {
      "proxies": {
        "default": {
          "httpProxy": "http://172.17.0.1:7890",
          "httpsProxy": "http://172.17.0.1:7890",
          "noProxy": "localhost,127.0.0.1"
        }
      }
    }
    
    配置完成后重启Docker服务:
    sudo systemctl restart docker
    

3. 验证Oracle账号权限

  • 登录Oracle官网的Container Registry页面,确认你的账号已被授权拉取Oracle标准DB镜像的权限。
  • 用curl测试仓库连通性:
    curl -v https://container-registry.oracle.com/v2/
    
    如果返回401 Unauthorized,说明域名解析正常,问题出在账号权限或登录信息上;如果仍提示解析失败,继续排查网络配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 17:20:42