在 Dockerfile 中使用 RUN git fetch -q --depth 1 origin 'v1.7.0' +refs/tags/*:refs/tags/* && git checkout -q FETCH_HEAD: 命令拉取代码时,可能会遇到 #0 5.671 fatal: unable to access 'https://github.com/containerd/containerd.git/': gnutls_handshake() failed: Error in the pull function. 错误。

即使已经通过 RUN git config --global http.proxy http://192.168.44.37:7890 && git config --global --add http.sslVerify false 配置了代理服务器,并关闭了 SSL 校验,仍然可能出现该错误。

该错误可能是由于以下原因导致的:

  1. 代理服务器配置错误,例如代理服务器不支持 HTTPS 请求。
  2. 代理服务器无法正常工作。
  3. 本地网络存在限制,例如防火墙阻止了连接。
  4. Git 客户端版本过低或存在问题。

以下是一些可能的解决方案:

  1. 检查代理服务器配置:确保代理服务器配置正确,并支持 HTTPS 请求。
  2. 尝试使用其他代理服务器:如果使用的是公司内部代理,可以尝试使用其他代理服务器或者直接连接互联网,看是否能够成功访问 GitHub。
  3. 检查本地网络:确保本地网络正常,例如防火墙没有阻止连接。
  4. 使用其他 Git 客户端:尝试使用其他 Git 客户端,例如 TortoiseGit,看是否能够解决问题。
  5. 升级 Git 客户端版本:如果使用的是旧版本的 Git 客户端,尝试升级到最新版本,看是否能够解决问题。

如果以上方法都无法解决问题,可以尝试联系 GitHub 官方支持获取帮助。

解决 Dockerfile 中 git fetch 失败: gnutls_handshake() failed 错误

原文地址: https://www.cveoy.top/t/topic/gR9J 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录