“入门”教程中的Docker登录错误

时间:2016-04-26 17:42:15

标签: authentication docker

我正在尝试在Docker的网站上关注初学者tutorial,我在登录时遇到错误。
操作系统是Ubuntu 14.04,我没有使用VirtualBox,我不在任何代理后面,想要推送到“常规”docker存储库(而非私有存储库)。

我发现所有线程都提到代理和私有存储库,但这不是我的情况,我只是想做简单的初学者教程。
这是我的尝试:

 $ sudo docker login
[sudo] password for myuname: 
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: myDHuname
Password: 
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)

我的码头信息:

Containers: 5
 Running: 0
 Paused: 0
 Stopped: 5
Images: 5
Server Version: 1.11.0
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 28
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
 Volume: local
 Network: bridge null host
Kernel Version: 3.19.0-58-generic
Operating System: Ubuntu 14.04.4 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 7.686 GiB
Name: myuname-ThinkPad-T420
ID: 6RW3:X3FC:T62N:CWKI:JQW5:YIPY:RAHO:ZHF4:DFZ6:ZL7X:JPOD:V7EC
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support

后记

现在docker login正在过去。自从昨天被打破以来,我没有碰过任何东西...... 我再也无法重现这种行为了。

3 个答案:

答案 0 :(得分:2)

我第一次使用docker时遇到这个问题。我已经使用shadowocks代理,并将其作为pac模式进行配置。当我尝试run docker run hello-world时,我收到此超时错误。当我将代理模式设置为全局时,错误就是那里。

但是当我禁用代理时,docker运行良好。它成功地拉远程图像。

  

docker for windows

     

注意:有些用户报告在Docker上连接Docker Hub时出现问题   对于Windows稳定版。这将表现为错误   尝试运行docker命令从Docker Hub中提取图像   尚未下载,例如第一次运行docker run   你好,世界。如果遇到此问题,请重置DNS服务器以使用   Google DNS固定地址:8.8.8.8。有关更多信息,请参阅   故障排除中的Networking issues

答案 1 :(得分:1)

错误Client.Timeout exceeded while awaiting headers表示:

向注册局https://registry-1.docker.io/v2/ timedout

发出GET请求
  • 负责(最有可能是libcurl)的图书馆在听到回复之前超时
  • 连接从未形成(代理/防火墙吞噬了它)

如果您看到以下结果,则可以排除超时和网络连接

$ curl https://registry-1.docker.io/v2/
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}

如果您接下来得到上述响应,则检查您的用户环境是否有某些代理配置。

env | grep "proxy"

注意:docker以root身份运行。也许你的env中有http_proxy。我很可能错了。任何人看看curl GET请求会发生什么

答案 2 :(得分:-2)

更改firefox中的代理设置。可能是您处于访问受限模式。只需在firefox设置中添加服务器地址 - >偏好 - >高级 - >网络 - >配置(设置)。在no proxy中添加服务器ip可以解决问题