Docker not working on win2k16

I have setup containers on a win2K16 according to msdn instructions, running any command gives back the following error(firewall disabled)

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)

My docker version is

Client:
Version: 1.12.2-cs2-ws-beta
API version: 1.25
Go version: go1.7.1
Git commit: 050b611
Built: Tue Oct 11 02:35:40 2016
OS/Arch: windows/amd64

Server:
Version: 1.12.2-cs2-ws-beta
API version: 1.25
Go version: go1.7.1
Git commit: 050b611
Built: Tue Oct 11 02:35:40 2016
OS/Arch: windows/amd64

I found a similar thread at

it is indicated because of a corp firewall which is not my case, firewall is disabled on the machine and has direct access to internet

I had the same issue connecting docker host server( windows server 2016 where docker engine running) to direct internet connection resolved the problem.

alternate solution : configure your company proxy server inside powershell for docker.

##[Environment]::SetEnvironmentVariable(“HTTP_PROXY”, “http://proxyserver:port”, [EnvironmentVariableTarget]::Machine)"##

And restart docker service : restart-service docker

And try pulling any container.

Regards,
Chethan Gatty

1 Like

I am at home office and have no proxy
Why do you assume that everybody has a proxy issue like you?
Regards

Hi!

Have you configured the config file for the deamon, specifically the HOST part for the client part to talk to the server part on the local host ?

{
“hosts”: [“tcp://0.0.0.0:2375”]
}

I’m not sure that is the reason since you have a reply on server side when running “docker version” but that could be related.

I hope it helps, cheers.

Yes Sir, here is my daemon file
{
“graph”: “E:\DockerMachines”,
“hosts”: [“tcp://192.168.5.34:2375”, “npipe://”]

}

I cna see that it is listening on posrt 2375 when doing netstat

Hi, any feedback on this?

Can you share the output from this troubleshooting script and also from docker pull microsoft/nanoserver ?

Here is the output of the script (salam\logs_20161230-143025.csv has 0 contents)

PS C:\Users\salam> Invoke-WebRequest https://raw.githubusercontent.com/Microsoft/Virtualization-Documentation/master/windows-server-container-tools/Debug-ContainerHost
/Debug-ContainerHost.ps1 -UseBasicParsing | Invoke-Expression
Checking for common problems
Describing Windows Version and Prerequisites
[+] Is Windows 10 Anniversary Update or Windows Server 2016 385ms
[+] Has KB3192366, KB3194496, or later installed if running Windows build 14393 506ms
[+] Is not a build with blocking issues 12ms
Describing Docker is installed
[+] A Docker service is installed - ‘Docker’ or ‘com.Docker.Service’ 16ms
[+] Service is running 18ms
[+] Docker.exe is in path 4.06s
[-] Docker is registered in the EventLog service 233ms
Expected: {True}
But was: {False}
61: (Test-Path “HKLM:\SYSTEM\CurrentControlSet\Services\EventLog\Application\docker”) -or (Test-Path “HKLM:\SYSTEM\CurrentControlSet\Services\EventLog\Appli
cation\DockerService”) | Should Be $true
at , : line 61
Describing User has permissions to use Docker daemon
[+] docker.exe should not return access denied 92ms
Describing Windows container settings are correct
[+] Do not have DisableVSmbOplock set to 1 45ms
[+] Do not have zz values set 45ms
Describing The right container base images are installed
[-] At least one of ‘microsoft/windowsservercore’ or ‘microsoft/nanoserver’ should be installed 174ms
ValidationMetadataException: The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
ParameterBindingValidationException: Cannot validate argument on parameter ‘Property’. The argument is null or empty. Provide an argument that is not null or empty,
and then try the command again.
at , : line 99
Describing Container network is created
[+] At least one local container network is available 2.56s
[+] At least one NAT, Transparent, or L2Bridge Network exists 25ms
[+] NAT Network’s vSwitch is internal 12ms
[+] Specified Network Gateway IP for NAT network is assigned to Host vNIC 92ms
[+] NAT Network’s internal prefix does not overlap with external IP’ 20ms
Showing output from: docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 1.12.2-cs2-ws-beta
Storage Driver: windowsfilter
Windows:
Logging Driver: json-file
Plugins:
Volume: local
Network: nat null overlay
Swarm: inactive
Default Isolation: process
Kernel Version: 10.0 14393 (14393.576.amd64fre.rs1_release_inmarket.161208-2252)
Operating System: Windows Server 2016 Standard
OSType: windows
Architecture: x86_64
CPUs: 1
Total Memory: 2 GiB
Name: ProdWebServer
ID: EAFQ:W3YV:HIXM:GWRN:WFJK:6TCQ:HEKP:AX6O:CESU:BQ2G:QLEP:OL3O
Docker Root Dir: E:\DockerMachines
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false

Showing output from: docker version
Client:
Version: 1.12.2-cs2-ws-beta
API version: 1.25
Go version: go1.7.1
Git commit: 050b611
Built: Tue Oct 11 02:35:40 2016
OS/Arch: windows/amd64

Server:
Version: 1.12.2-cs2-ws-beta
API version: 1.25
Go version: go1.7.1
Git commit: 050b611
Built: Tue Oct 11 02:35:40 2016
OS/Arch: windows/amd64

Showing output from: docker network ls
NETWORK ID NAME DRIVER SCOPE
f972167c09bb nat nat local
d6c399041659 none null local

Warnings & errors from the last 24 hours
Logs saved to C:\Users\salam\logs_20161230-143025.csv

Here is the same error in the eventlog

The description for Event ID 1 from source docker cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.

If the event originated on another computer, the display information had to be saved with the event.

The following information was included with the event:

Not continuing with pull after error: error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/65/654716d8aec0091d11ca6c9149c0cc969f44cb840e3e25c496cb81080cc3cea9/data?Expires=1483106085&Signature=DtN3NI-rmsmAhwTdweHJLg99luqv8-QBohz-rT4KZX6uhc6A34Tmp0o12ycPNSzvv73rzS4tpPUlDOfIz-7NC7nNehybKcm~KK3Pvsf41mDmwteSaRLMqv-39phlN84WMEyafkLlMBZw0ZCwJwQS2Kom0iMTyxMg~7lSLs2EK-U_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q: dial tcp 54.192.129.169:443: i/o timeout

How can I remove docker on windows 2k16 then reinstall and do a fresh new setup to see if there is something wrong in the initial setup process?

This should be enough to remove the service:

stop-service docker
dockerd.exe --unregister-service

Then, you can use the manual installation steps to try v1.13-rc4:

Invoke-WebRequest "https://test.docker.com/builds/Windows/x86_64/docker-1.13.0-rc4.zip" -OutFile "$env:TEMP\docker-1.13.0-rc4.zip" -UseBasicParsing
Expand-Archive -Path "$env:TEMP\docker-1.13.0-rc4.zip" -DestinationPath $env:ProgramFiles
dockerd --register-service

I don’t think this is an installation problem, it seems to be network or certificate related. There’s a chance v1.13-rc4 has a fix but I don’t know for sure.

Just to confirm - you get the timeout error after running docker pull microsoft/nanoserver correct?

1 Like

Yes, exactly, ac ouple of minutes after running
docker pull microsoft/nanoserver correct
I get the error

Patrick, "can use the manual installation steps " what are those steps? thanks

I copied the steps above to download & extract, they’re from here: https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-windows-10 . It says for Windows 10 but it will work on both Win10 & 2016

1 Like

Ok thanks, but should if go through the steps of uninstalling on wink16 as setup was done through the following steps

Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name docker -ProviderName DockerMsftProvider

I think you can do remove-package, but you can overwrite the files and things will work fine.

I think cloudfront.net is the CDN used for some of the Docker Hub content, not the Windows content itself.

@eliassal please report back what you see after uprading to the 1.13 RC4 release candidate. As @patricklang mentioned, you don’t have to worry too much about uninstalling. You can nuke the $Env:ProgramFiles\docker directory on the WS2016 machine and follow Patrick’s instructions.

Please also post more details on the WS2016 system in question. Eg. is it a VM (running on virtualbox, hyper-v, etc.) or a bare-metal system, and details on how it was set up. It might be networking or DNS weirdness as detailed here: https://github.com/docker/docker/issues/22635

Also let us know what happens if you access the cloudfront urls you see using Invoke-Webrequest and/or a browser.

Patrick, Michael, I upgraded as recommended, getting the exact same error as you can notice

PS C:\Users\salam> dockerd --register-service
PS C:\Users\salam> Start-Service Docker

Then downlaoded 1.13-rc4 version

PS C:\Users\salam> docker version
Client:
Version: 1.13.0-rc4
API version: 1.25
Go version: go1.7.3
Git commit: 88862e7
Built: Sat Dec 17 01:34:17 2016
OS/Arch: windows/amd64

Server:
Version: 1.13.0-rc4
API version: 1.25 (minimum version 1.24)
Go version: go1.7.3
Git commit: 88862e7
Built: Sat Dec 17 01:34:17 2016
OS/Arch: windows/amd64
Experimental: false
PS C:\Users\salam> docker pull microsoft/nanoserver
Using default tag: latest
latest: Pulling from microsoft/nanoserver
error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/
65/654716d8aec0091d11ca6c9149c0cc969f44cb840e3e25c496cb81080cc3cea9/data?Expires=1483968209&Signature=jJjr8bNn3bj-YGjyMh
OvJWBzViMyVZKy5Jt~vtG7eeW862M2~HwZhv1e5XDSVysvsCvH7t2f-WcfsVbU6I8-jWJsb–DTTBbGYtQYQnlMFZ23ctVL1B5C72n56ug3c7qE2HpTOaHeQ
M1Cy8q90g3xb2H5rmCgYhNYO~zbF390tY_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q: dial tcp 54.230.15.249:443: i/o timeout

Yes, i is a win2K16 hyper-V VM, itself has Hyper-V enabled as well, it can access internet as it is connected to an external switch, it connects and ping anythinhg on the internet as other machines

1 Like

Also, I noticed that docker-compose is not inside the directory docker in the zip file

Hello Guys

Just evaluating docker myself on Windows 2016 and had the same issues. Just got working now with the 1.14 release.

1.Obtain 1-14 version from -https://master.dockerproject.org/
docker-1.14.0-dev.zip - copied to c:

  1. ran
    stop-service docker
    dockerd.exe --unregister-service
    Expand-Archive -Path “$env:c:\docker-1.14.0-dev.zip” -DestinationPath $env:ProgramFiles -Force
    dockerd --register-service
    Start-Service Docker

no running below command and it’s pulling down windowsservercore
docker pull microsoft/windowsservercore

Thanks Patrick / Eliassal / Guys

It did not work for me , I got the exact same error