如何调试间歇性发生的 docker 登录问题?

问题描述 投票:0回答:1

当我尝试登录 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"

但是我没有得到这个错误的根本原因。有什么办法可以查看错误的更多详细信息吗?

docker docker-registry docker-logs
1个回答
0
投票

您可以深入研究 Go TLS 源代码,了解

alertInternalError
的各种实例,以了解可能触发此问题的原因。使用像
openssl
这样的工具进行调试可能会更容易,以验证您是否真的在与 GHCR 对话:

openssl s_client -connect ghcr.io:443 -showcerts </dev/null

检查密钥是否有效 (

Verification: OK
)、未过期或任何其他问题。

鉴于它是间歇性的,我怀疑要么是不稳定的网络丢失了连接,要么是网络上的代理丢失了连接。

© www.soinside.com 2019 - 2024. All rights reserved.