title: ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running? Windows subsystem for Linux
body: <p>I have been working with Docker for about two months now, working on Windows/WSL. The other day I needed to restart my machine and once it restarted I tried setting up my docker containers again and ran into an issue that I have had before, however. All the solutions I used last time do not work, and none on google work either. </p>
  
  <p>I have tried a lot of things, every single possibility on the internet I could fine and I have been stuck on this for at least 8 hours already and wish to waste no more time on it. I will list a few I have already tried but do not work: </p>
  
  <ol>
  <li><code>sudo usermod -aG docker $USER</code></li>
  <li><code>sudo ln -s /mnt/c/Program\ Files/Docker/Docker/resources/bin/docker.exe /usr/bin/docker</code></li>
  <li>using sudo </li>
  <li>restarted docker</li>
  <li>reinstalled docker desktop (windows)</li>
  </ol>
  
  <p>The command within our make file runs this: </p>
  
  <pre><code>docker-compose up -d
  </code></pre>
  
  <p>We use a MakeFile to make our lives a lot easier in terms of docker commands so usually I would run this command and it should just bring the container up and work fine. But instead I get this:</p>
  
  <pre><code>ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?
  
  If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
  Makefile:13: recipe for target 'up' failed
  make: *** [up] Error 1
  </code></pre>
  
  <p>I was then recommended trying <code>sudo dockerd</code> which I then get this error, which does half explain the issue but I could not find a clear answer on how to fix my issue: </p>
  
  <pre><code>failed to start daemon: Error initializing network controller: error obtaining controller instance: failed to create NAT chain DOCKER: iptables failed: iptables -t nat -N DOCKER: iptables v1.6.1: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
  Perhaps iptables or your kernel needs to be upgraded.
   (exit status 3)
  </code></pre>
  
  <p>I am really hoping someone is able to help me with this as I am so stuck and need to get this to work.</p>