首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Linux上的Docker :所有操作(hello-world、拉出映像等)都会产生超时。

Linux上的Docker :所有操作(hello-world、拉出映像等)都会产生超时。
EN

Stack Overflow用户
提问于 2018-11-16 16:15:06
回答 2查看 1.9K关注 0票数 2

我知道这是一个常见的问题,但我花了两个小时试图通过docker run hello-world,我完全感到困惑。

我所尝试的一切都会产生一个net/http,等待连接超时。

运行 docker login

代码语言:javascript
运行
复制
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: ******
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)

运行hello-world

代码语言:javascript
运行
复制
mike@tictac:~$ docker run hello-world
Unable to find image 'hello-world:latest' locally
docker: 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).
See 'docker run --help'.

我的停靠版本是一个干净的安装AFAIK:

代码语言:javascript
运行
复制
mike@tictac:~$ docker --version
Docker version 18.09.0, build 4d60db4

我尝试将8.8.8.8添加到我的/etc/rupv.conf中,但没有结果:

代码语言:javascript
运行
复制
mike@tictac:~$ cat /etc/resolv.conf 
# Generated by NetworkManager
search home
nameserver 127.0.0.53
nameserver 8.8.8.8

我认为我的/etc/host文件也很好:

代码语言:javascript
运行
复制
mike@tictac:~$ cat /etc/hosts
127.0.0.1   localhost
127.0.1.1   tictac
8.8.8.8     tictac

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

这是我的码头信息:

代码语言:javascript
运行
复制
mike@tictac:~$ docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 18.09.0
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: c4446665cb9c30056f4998ed953e6d4ff22c7c39
runc version: 4fc53a81fb7c994640722ac585fa9ca548971871
init version: fec3683
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.15.0-33-generic
Operating System: Linux Mint 19
OSType: linux
Architecture: x86_64
CPUs: 12
Total Memory: 15.37GiB
Name: tictac
ID: J54P:ILHO:J76M:AF27:MDKJ:BIDS:WODK:MA6N:IICP:TIMJ:BIUN:H56O
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
HTTP Proxy: http://proxy.example.com:80/
HTTPS Proxy: http://1.1.1.1:111
No Proxy: localhost,127.0.0.1,docker-registry.somecorporation.com
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

WARNING: No swap limit support

我已经确认码头确实在运行:

代码语言:javascript
运行
复制
mike@tictac:~$ sudo service docker status

    ● docker.service - Docker Application Container Engine
       Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
      Drop-In: /etc/systemd/system/docker.service.d
               └─10_docker_proxy.conf, http-proxy.conf
       Active: active (running) since Fri 2018-11-16 11:06:36 EST; 6min ago
         Docs: https://docs.docker.com
     Main PID: 6190 (dockerd)
        Tasks: 22
       CGroup: /system.slice/docker.service
               └─6190 /usr/bin/dockerd -H unix://

如果我能穿过哈罗世界,我会很高兴的。

编辑:也是相关的,我可以直接把URL卷曲得很好:

代码语言:javascript
运行
复制
mike@tictac:~/Projects/conserve-with-us/conserve-with-us-api$ curl https://registry-1.docker.io/v2/
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-11-16 19:53:41

在这种情况下,我通常怀疑代理配置,您的docker info还显示了一些不一致的HTTP/HTTPS和旁路配置。

代码语言:javascript
运行
复制
HTTP Proxy: http://proxy.example.com:80/
HTTPS Proxy: http://1.1.1.1:111
No Proxy: localhost,127.0.0.1,docker-registry.somecorporation.com

通常大多数人根本不需要设置这些,但是一些公司强制执行不透明的代理设置,但在这些情况下,前2通常是相同的,对于旁路配置,它也可能包括/var/run/docker.sock

我将删除或重置所有您的代理配置,以确保所有的代理配置都匹配:

因此,如果您需要设置一个不透明的代理,我还将确保您的http_proxyhttps_proxyproxy_bypass环境变量也匹配您预期的代理配置:

代码语言:javascript
运行
复制
env | grep proxy

因此,您将看到与curl或其他支持这些的linux应用程序相同的结果。

票数 2
EN

Stack Overflow用户

发布于 2022-01-21 12:48:54

如果您正在使用Linux,只需转到系统-设置中的网络,在您连接的网络的设置按钮中,您将在ipv6 4/ipv6 6部分找到DNS字段。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53341666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档