无法通过 Ubuntu 18.04.5 LTS 登录 docker

无法通过 Ubuntu 18.04.5 LTS 登录 docker

我在从 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

基本上,到目前为止我所做的就是:

  1. 运行sudo docker run hello-world 以验证我的docker是否正常运行
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
  1. 运行sudo vi ~/.docker/config.json添加“HttpHeaders
{
        "auths": {},
        "HttpHeaders": {
                "User-Agent": "Docker-Client/19.03.12 (linux)"
        }
}
  1. 运行sudo vi /etc/docker/daemon.json添加 dns 然后重新加载守护进程并重新启动 docker
{
                "dns": ["8.8.8.8","8.8.4.4" ]
}
  1. 运行curl https://registry-1.docker.io/v2/,果然我得到了这个
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}

当人们谈论代理服务器时,我也进行了测试运行curl https://google.com并获得了响应,这是否意味着我的服务器不在代理后面?

不幸的是,尝试了上述解决方案的几种组合后,我仍然无法登录到docker。

有人有什么建议吗?

相关内容