Docker pull results in "HTTP 408 Request Time-out"

Installation and initialization of Docker runs fine, but pulling an image times out after a couple of minutes.

Expected behavior

PS C:\Users\tvollstaedt> docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
4276590986f6: Pull complete
a3ed95caeb02: Pull complete
Digest: sha256:4f32210e234b4ad5cac92efacc0a3d602b02476c754f13d517e1ada048e5a8ba
Status: Downloaded newer image for hello-world:latest

Hello from Docker.
This message shows that your installation appears to be working correctly.
...

Actual behavior

PS C:\Users\tvollstaedt> docker run hello-world
Unable to find image 'hello-world:latest' locally
C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: error parsing HTTP 408 response bod
y: invalid character '<' looking for beginning of value: "<html><body><h1>408 Request Time-out</h1>\nYour browser didn't
 send a complete request in time.\n</body></html>\n\n".
See 'C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help'.

Information

Freshly installed Windows 10 Pro 1511 (German)

  • Azure AD joined
  • IPv6 enabled (same error with IPv6 disabled)
  • Firewall disabled
  • Docker enabled Hyper-V
  • Connected via physical ethernet
  • Single ethernet adapter
  • No networking software installed, almost vanilla

Logfile:

[21:06:57.339][Program        ][Info   ] Version 1.11.1-beta11 (build: 2789)
[21:06:57.342][Program        ][Info   ] Starting on: 5/17/2016 9:06:57 PM
[21:06:57.346][Program        ][Info   ] Resources: C:\Program Files\Docker\Docker\Resources
[21:06:57.349][Program        ][Info   ] OS: Windows 10 Pro
[21:06:57.351][Program        ][Info   ] Edition: Professional
[21:06:57.354][Program        ][Info   ] Id: 1511
[21:06:57.357][Program        ][Info   ] Build: 10586
[21:06:57.360][Program        ][Info   ] BuildLabName: 10586.306.amd64fre.th2_release_sec.160422-1850
[21:06:57.366][Program        ][Info   ] Mixpanel Id: 8ACFBEC8-2BC9-42A9-9453-8FE7F9AD817C
[21:06:57.371][Program        ][Info   ] Sha1: b0bc231ec0337a84cc1ce50f51df77f9b0f5c993
[21:06:57.373][Program        ][Info   ] You can send feedback, including this log file, at https://forums.docker.com/c/docker-for-windows
[21:06:57.575][Mixpanel       ][Info   ] Tracking: appLaunched
[21:06:59.353][Mixpanel       ][Info   ] Tracking: heartbeat
[21:06:59.357][BackendServer  ][Info   ] Started
[21:06:59.409][NamedPipeClient][Info   ] Sending Version()...
[21:06:59.414][NamedPipeServer][Info   ] Version()
[21:06:59.417][NamedPipeServer][Info   ] Version done.
[21:06:59.421][NamedPipeClient][Info   ] Received response for Version: Version 1.11.1-beta11 (build: 2789)
[21:06:59.424][NamedPipeClient][Info   ] Sending CheckInstallation()...
[21:06:59.427][NamedPipeServer][Info   ] CheckInstallation()
[21:06:59.431][HyperV         ][Info   ] Check Hyper-V Windows optional feature
[21:06:59.434][PowerShell     ][Info   ] Run script...
[21:07:01.091][HyperV         ][Info   ] Hyper-V Windows feature is enabled
[21:07:01.095][NamedPipeServer][Info   ] CheckInstallation done.
[21:07:01.099][NamedPipeClient][Info   ] Received response for CheckInstallation: 
[21:07:01.104][NamedPipeClient][Info   ] Sending CheckHyperVState()...
[21:07:01.107][NamedPipeServer][Info   ] CheckHyperVState()
[21:07:01.111][HyperV         ][Info   ] Check Hyper-V Service State
[21:07:01.118][PowerShell     ][Info   ] Run script with parameters: -Check True...
[21:07:07.468][HyperV         ][Info   ] Hyper-V is running and responding
[21:07:07.474][HyperV         ][Info   ] Hyper-V is running
[21:07:07.476][NamedPipeServer][Info   ] CheckHyperVState done.
[21:07:07.479][NamedPipeClient][Info   ] Received response for CheckHyperVState: 
[21:07:07.551][Authentication ][Info   ] Checking token
[21:07:07.671][Authentication ][Info   ] Token is valid
[21:07:07.799][Notifications  ][Info   ] Docker is Initializing...
[21:07:07.816][Updater        ][Info   ] Checking for updates on the Beta channel...
[21:07:07.819][NamedPipeClient][Info   ] Sending Stop()...
[21:07:07.823][NamedPipeServer][Info   ] Stop()
[21:07:07.828][HyperV         ][Info   ] Stop
[21:07:07.832][PowerShell     ][Info   ] Run script with parameters: -Stop True...
[21:07:08.760][HyperV         ][Info   ] Kill VM MobyLinuxVM...
[21:07:08.797][HyperV         ][Info   ] VM MobyLinuxVM is stopped
[21:07:08.804][Firewall       ][Info   ] Closing ports...
[21:07:08.807][PowerShell     ][Info   ] Run script...
[21:07:10.245][Firewall       ][Info   ] Ports are closed
[21:07:10.249][NamedPipeServer][Info   ] Stop done.
[21:07:10.252][NamedPipeClient][Info   ] Received response for Stop: 
[21:07:10.257][NamedPipeClient][Info   ] Sending Start(2, 2048)...
[21:07:10.260][NamedPipeServer][Info   ] Start(2, 2048)
[21:07:10.265][Firewall       ][Info   ] Opening ports for C:\Program Files\Docker\Docker\Resources\com.docker.proxy.exe and C:\Program Files\Docker\Docker\DockerForWindows.exe...
[21:07:10.269][PowerShell     ][Info   ] Run script...
[21:07:11.584][Firewall       ][Info   ] Ports are opened
[21:07:11.588][HyperV         ][Info   ] Create
[21:07:11.592][PowerShell     ][Info   ] Run script with parameters: -Create True -CPUs 2 -Memory 2048 -IsoFile C:\Program Files\Docker\Docker\Resources\mobylinux.iso...
[21:07:12.373][HyperV         ][Info   ] Using existing Switch: DockerNAT
[21:07:12.640][HyperV         ][Info   ] Using existing Switch IP address
[21:07:12.680][HyperV         ][Info   ] Using existing Net NAT: DockerNAT
[21:07:12.881][HyperV         ][Info   ] Using existing: MobyLinuxVM
[21:07:13.125][HyperV         ][Info   ] Setting MobyLinuxVM vm CPUs to 2 and Memory to 2048 MB
[21:07:13.132][Dhcp           ][Info   ] Dhcp starting on port 67, on interface vEthernet (DockerNAT)...
[21:07:13.160][Dhcp           ][Info   ] Dhcp started.
[21:07:13.167][Proxy          ][Info   ] Starting com.docker.proxy
[21:07:13.244][HyperV         ][Info   ] Start
[21:07:13.247][PowerShell     ][Info   ] Run script with parameters: -Start True...
[21:07:13.315][Proxy          ][Info   ] docker proxy (on deprecated port): ready
[21:07:13.319][Proxy          ][Info   ] dns server: ready
[21:07:13.323][Proxy          ][Info   ] poison pill: ready. Will kill ourself if parent process DockerForWindows.exe dies
[21:07:13.326][Proxy          ][Info   ] docker proxy: ready
[21:07:13.902][HyperV         ][Info   ] Starting VM MobyLinuxVM...
[21:07:14.594][HyperV         ][Info   ] Wait for the VM to get an IP address
[21:07:15.618][HyperV         ][Info   ] Wait for the VM to get an IP address
[21:07:16.651][HyperV         ][Info   ] Wait for the VM to get an IP address
[21:07:17.676][HyperV         ][Info   ] Wait for the VM to get an IP address
[21:07:18.804][HyperV         ][Info   ] Wait for the VM to get an IP address
[21:07:19.075][Dhcp           ][Info   ] DISCOVER received from 00:15:5D:4B:01:0F
[21:07:19.083][Dhcp           ][Info   ] Offer (10.0.75.2) to (00:15:5D:4B:01:0F)...
[21:07:19.092][Dhcp           ][Info   ] Offer sent.
[21:07:19.095][Dhcp           ][Info   ] DISCOVER processed.
[21:07:19.122][Dhcp           ][Info   ] REQUEST received from 00:15:5D:4B:01:0F
[21:07:19.128][Dhcp           ][Info   ] Ack (10.0.75.2) to (00:15:5D:4B:01:0F)...
[21:07:19.131][Dhcp           ][Info   ] Ack sent.
[21:07:19.134][Dhcp           ][Info   ] REQUEST processed.
[21:07:19.581][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 35580 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;moby.	IN	 A 
[21:07:19.585][Proxy          ][Info   ] Search for dns server...
[21:07:19.645][Proxy          ][Info   ] Server:  de-hue01a-dns-res-02.hue.unity-media.net
[21:07:19.649][Proxy          ][Info   ] Address:  2a02:908:2:1102::12
[21:07:19.652][Proxy          ][Info   ] 
[21:07:19.655][Proxy          ][Info   ] Name:    localhost
[21:07:19.659][Proxy          ][Info   ] Addresses:  ::1
[21:07:19.662][Proxy          ][Info   ] 	  127.0.0.1
[21:07:19.665][Proxy          ][Info   ] 
[21:07:19.668][Proxy          ][Info   ] 
[21:07:19.671][Proxy          ][Info   ] Found dns server 2a02:908:2:1102::12
[21:07:19.674][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:19.677][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NXDOMAIN, id: 35580 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0  ;; QUESTION SECTION: ;moby.	IN	 A  ;; AUTHORITY SECTION: .	2824	IN	SOA	a.root-servers.net. nstld.verisign-grs.com. 2016051701 1800 900 604800 86400 
[21:07:20.009][NamedPipeServer][Info   ] Start done.
[21:07:20.013][NamedPipeClient][Info   ] Received response for Start: 
[21:07:20.018][Notifications  ][Info   ] Docker is running
[21:07:20.022][Mixpanel       ][Info   ] Tracking: installShowWelcomePopup
[21:07:20.062][Mixpanel       ][Info   ] Tracking: appRunning
[21:07:26.025][Proxy          ][Info   ] proxy >> POST /v1.23/containers/create [rewriteBinds]
[21:07:26.030][Proxy          ][Info   ] proxy >> POST /v1.23/containers/create
[21:07:26.034][Proxy          ][Info   ] Dial 10.0.75.2:2375
[21:07:26.038][Proxy          ][Info   ] Lookup IP for 10.0.75.2:2375
[21:07:26.041][Proxy          ][Info   ] [10.0.75.2]
[21:07:26.046][Proxy          ][Info   ] Dial IP 10.0.75.2:2375
[21:07:26.049][Proxy          ][Info   ] proxy << POST /v1.23/containers/create
[21:07:26.053][Proxy          ][Info   ] proxy >> GET /v1.23/info
[21:07:26.056][Proxy          ][Info   ] Dial 10.0.75.2:2375
[21:07:26.059][Proxy          ][Info   ] Dial IP 10.0.75.2:2375
[21:07:26.092][Proxy          ][Info   ] proxy << GET /v1.23/info
[21:07:26.184][Proxy          ][Info   ] proxy >> POST /v1.23/images/create?fromImage=hello-world&tag=latest
[21:07:26.189][Proxy          ][Info   ] Dial 10.0.75.2:2375
[21:07:26.192][Proxy          ][Info   ] Dial IP 10.0.75.2:2375
[21:07:26.196][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 56189 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 AAAA 
[21:07:26.199][Proxy          ][Info   ] Search for dns server...
[21:07:26.203][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 25465 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 A 
[21:07:26.256][Proxy          ][Info   ] Server:  de-hue01a-dns-res-02.hue.unity-media.net
[21:07:26.260][Proxy          ][Info   ] Address:  2a02:908:2:1102::12
[21:07:26.264][Proxy          ][Info   ] 
[21:07:26.268][Proxy          ][Info   ] Name:    localhost
[21:07:26.271][Proxy          ][Info   ] Addresses:  ::1
[21:07:26.274][Proxy          ][Info   ] 	  127.0.0.1
[21:07:26.278][Proxy          ][Info   ] 
[21:07:26.281][Proxy          ][Info   ] 
[21:07:26.284][Proxy          ][Info   ] Found dns server 2a02:908:2:1102::12
[21:07:26.288][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:26.291][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:26.294][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NOERROR, id: 56189 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 AAAA  ;; ANSWER SECTION: registry-1.docker.io.	60	IN	CNAME	registry-origin.docker.io.  ;; AUTHORITY SECTION: docker.io.	900	IN	SOA	ns-513.awsdns-00.net. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400 
[21:07:26.297][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NOERROR, id: 25465 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 A  ;; ANSWER SECTION: registry-1.docker.io.	60	IN	CNAME	registry-origin.docker.io. registry-origin.docker.io.	60	IN	A	52.3.83.159 registry-origin.docker.io.	60	IN	A	54.236.102.40 registry-origin.docker.io.	60	IN	A	52.200.174.126 
[21:07:26.962][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 28921 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;auth.docker.io.	IN	 A 
[21:07:26.967][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:26.972][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 10384 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;auth.docker.io.	IN	 AAAA 
[21:07:26.976][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:27.004][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NOERROR, id: 10384 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 0  ;; QUESTION SECTION: ;auth.docker.io.	IN	 AAAA  ;; ANSWER SECTION: auth.docker.io.	143	IN	CNAME	elb-registry.us-east-1.aws.dckr.io. elb-registry.us-east-1.aws.dckr.io.	900	IN	CNAME	us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com.  ;; AUTHORITY SECTION: us-east-1.elb.amazonaws.com.	60	IN	SOA	ns-1119.awsdns-11.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 60 
[21:07:27.008][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NOERROR, id: 28921 ;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;auth.docker.io.	IN	 A  ;; ANSWER SECTION: auth.docker.io.	143	IN	CNAME	elb-registry.us-east-1.aws.dckr.io. elb-registry.us-east-1.aws.dckr.io.	900	IN	CNAME	us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com. us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com.	60	IN	A	54.236.102.40 us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com.	60	IN	A	52.3.83.159 us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com.	60	IN	A	52.200.174.126 
[21:07:27.687][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 36725 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 AAAA 
[21:07:27.692][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:27.695][Proxy          ][Info   ] Handle DNS query ;; opcode: QUERY, status: NOERROR, id: 46207 ;; flags: rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 A 
[21:07:27.700][Proxy          ][Info   ] Forward DNS query on udp to [2a02:908:2:1102::12]:53
[21:07:27.717][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NOERROR, id: 36725 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 AAAA  ;; ANSWER SECTION: registry-1.docker.io.	58	IN	CNAME	registry-origin.docker.io.  ;; AUTHORITY SECTION: docker.io.	898	IN	SOA	ns-513.awsdns-00.net. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400 
[21:07:27.721][Proxy          ][Info   ] Got response ;; opcode: QUERY, status: NOERROR, id: 46207 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;registry-1.docker.io.	IN	 A  ;; ANSWER SECTION: registry-1.docker.io.	58	IN	CNAME	registry-origin.docker.io. registry-origin.docker.io.	58	IN	A	52.200.174.126 registry-origin.docker.io.	58	IN	A	54.236.102.40 registry-origin.docker.io.	58	IN	A	52.3.83.159 

Nslookup localhost

IPv6 enabled:

Server:  de-hue01a-dns-res-02.hue.unity-media.net
Address:  2a02:908:2:1102::12

Name:    localhost
Addresses:  ::1
          127.0.0.1

IPv6 disabled:

Server:  UnKnown
Address:  192.168.0.1

Name:    localhost
Addresses:  ::1
          127.0.0.1

`

Steps to reproduce the behavior

  1. Install / Start Docker for windows
  2. Wait until intialization is finished
  3. Run docker run hello-world from Powershell

Hi, can you paste the result of nslookup -type=A auth.docker.io and nslookup -type=AAAA auth.docker.io both with IPv6 enabled and disabled? Thanks in advance.

Sure:

IPv6 enabled

PS C:\Users\tvollstaedt> nslookup -type=A auth.docker.io
Server:  de-hue01a-dns-res-02.hue.unity-media.net
Address:  2a02:908:2:1102::12

Nicht autorisierende Antwort:
Name:    us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com
Addresses:  52.200.174.126
          54.236.102.40
          52.3.83.159
Aliases:  auth.docker.io
          elb-registry.us-east-1.aws.dckr.io

PS C:\Users\tvollstaedt> nslookup -type=AAAA auth.docker.io
Server:  de-hue01a-dns-res-02.hue.unity-media.net
Address:  2a02:908:2:1102::12

Nicht autorisierende Antwort:
Nicht autorisierende Antwort:
Name:    auth.docker.io

IPv6 disabled

PS C:\Users\tvollstaedt> nslookup -type=A auth.docker.io
Server:  UnKnown
Address:  192.168.0.1

Nicht autorisierende Antwort:
Name:    us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com
Addresses:  52.3.83.159
          54.236.102.40
          52.200.174.126
Aliases:  auth.docker.io
          elb-registry.us-east-1.aws.dckr.io

PS C:\Users\tvollstaedt> nslookup -type=AAAA auth.docker.io
Server:  UnKnown
Address:  192.168.0.1

Nicht autorisierende Antwort:
Nicht autorisierende Antwort:
Name:    auth.docker.io

@dgageot Still having the same issue with latest build 3073. Same error.

Enabling “VPN compatibility mode” in latest build 3441 resolves the issue! Still no idea what could have caused this, I’m not using any VPN. I’m willing to test / try out anything if you have suggestions.