当我尝试登录 GitHub 容器注册表时,我间歇性地收到以下错误。
Docker login for 'ghcr.io' failed with exit code 1
因此,我检查了 Docker Daemon 日志 (/var/log/messages),并在日志中找到了以下有关登录失败的信息。
level=info msg="Error logging in to endpoint, trying next endpoint" error="Get \https://ghcr.io/v2/\: remote error: tls: internal error"
level=error msg="Handler for POST /v1.41/auth returned error: Get \https://ghcr.io/v2/\: remote error: tls: internal error"
但是我没有得到这个错误的根本原因。有什么办法可以查看错误的更多详细信息吗?
您可以深入研究 Go TLS 源代码,了解
alertInternalError
的各种实例,以了解可能触发此问题的原因。使用像 openssl
这样的工具进行调试可能会更容易,以验证您是否真的在与 GHCR 对话:
openssl s_client -connect ghcr.io:443 -showcerts </dev/null
检查密钥是否有效 (
Verification: OK
)、未过期或任何其他问题。
鉴于它是间歇性的,我怀疑要么是不稳定的网络丢失了连接,要么是网络上的代理丢失了连接。