Search code examples
dockerboot2dockerdocker-machine

Docker error on Windows 7 “Client.Timeout exceeded while awaiting headers”


My Problem is similar to the other two Questions:starting tutorial and Timeout on windows 2016. But none of it resolved my problem. (on my other search I didn't find any articles that could help my case > search timeout)

For any of the following commands:

  • docker run hello-world
  • docker pull hello-world
  • docker login -u user -p pass

I get the same error: output pull

My proxies are correctly set to my cntlm service: proxies

when I try to get the address with curl I get the following answer: curl get

My docker version: docker version

Docker info: docker info

I've tried all the troubleshoot from this link (create a new default docker machine and so on)

Do you have any idea what could I do to download hello-world (or other) container?


Solution

  • Finally I got it: First of all the client should be the same Version as the Server (now both are 1.13.1)

    Second because I am using a Cntlm I have to create a Tunnel to forward my port from the Cntlm configuration.

    ssh -R tunnelPort:proxy-Cntlm docker@ip.docker.machine
    

    where:

    tunnelPort will be used on the docker-machine (ex: 3000 for 127.0.0.1:3000)

    proxy-Cntlm is the ip + port from cntlm.ini (ex: 127.0.0.1:3128)

    ip.docker.machine it can be found simply by running docker-machine ls

    One more thing! you have to adjust the ~/.ssh/config (at least for cygwin)

    Host docker 192.168.99.100
        Hostname 192.168.99.100
        IdentityFile "path/to/id_rsa" 
    #on windows it is C:/Users/user/.docker/machine/machines/default/id_rsa when you have a default Machine