我在从 Ubuntu 18.04.5 LTS 登录 docker 时遇到问题
这是我运行的登录docker的命令
sudo docker login -u myname -p mypass
这是我得到的错误
Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
我在谷歌上搜索了一下,似乎这对大家来说并不是一个普遍的问题。
这是我的docker版本
Client: Docker Engine - Community
Version: 19.03.12
API version: 1.40
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:45:36 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.12
API version: 1.40 (minimum version 1.12)
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:44:07 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.13
GitCommit: 7ad184331fa3e55e52b890ea95e65ba581ae3429
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683
基本上,到目前为止我所做的就是:
- 运行
sudo docker run hello-world
以验证我的docker是否正常运行
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
- 运行
sudo vi ~/.docker/config.json
添加“HttpHeaders
{
"auths": {},
"HttpHeaders": {
"User-Agent": "Docker-Client/19.03.12 (linux)"
}
}
- 运行
sudo vi /etc/docker/daemon.json
添加 dns 然后重新加载守护进程并重新启动 docker
{
"dns": ["8.8.8.8","8.8.4.4" ]
}
- 运行
curl https://registry-1.docker.io/v2/
,果然我得到了这个
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}
当人们谈论代理服务器时,我也进行了测试运行curl https://google.com
并获得了响应,这是否意味着我的服务器不在代理后面?
不幸的是,尝试了上述解决方案的几种组合后,我仍然无法登录到docker。
有人有什么建议吗?