Is Docker running within WSL or connecting back to Windows?

After successfully installing Docker in WSL, if I run standard Docker commands, I get connection errors. Runing with sudo or not yields the same result in all examples.

root@SUR002731165154:~# sudo docker info
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

root@SUR002731165154:~# sudo docker version
Client:
Version:      1.13.1
API version:  1.26
Go version:   go1.7.5
Git commit:   092cba3
Built:        Wed Feb  8 06:42:29 2017
OS/Arch:      linux/amd64
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

However, if I add -H localhost:2375 to the command I can run Docker no problem. Is Docker connecting to my localhost Windows 10 machine or is it running locally on WSL, or is doing a bit of both?

  • Why do I get Error: Could not find or load main class .jar when I run docker image
  • Gitlab CI: How to run tests in pipeline using docker and shell runner
  • Kubernetes 1.2alpha8 AWS Container Registry Integration
  • docker-compose swarm: force containers to run on specific hosts
  • Building a docker container: will it be public?
  • Build docker image from rhel6.5 image
  • root@SUR002731165154:~# docker -H localhost:2375 version
    Client:
    Version:      1.13.1
    API version:  1.26
    Go version:   go1.7.5
    Git commit:   092cba3
    Built:        Wed Feb  8 06:42:29 2017
    OS/Arch:      linux/amd64
    
    Server:
    Version:      1.13.1
    API version:  1.26 (minimum version 1.12)
    Go version:   go1.7.5
    Git commit:   092cba3
    Built:        Wed Feb  8 08:47:51 2017
    OS/Arch:      linux/amd64
    Experimental: true
    
    root@SUR002731165154:~# docker -H localhost:2375 info
    Containers: 11
    Running: 0
    Paused: 0
    Stopped: 11
    Images: 8
    Server Version: 1.13.1
    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 ipvlan macvlan null overlay
    Swarm: inactive
    Runtimes: runc
    Default Runtime: runc
    Init Binary: docker-init
    containerd version: aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1
    runc version: 9df8b306d01f59d3a8029be411de015b7304dd8f
    init version: 949e6fa
    Security Options:
    seccomp
    Profile: default
    Kernel Version: 4.9.8-moby
    Operating System: Alpine Linux v3.5
    OSType: linux
    Architecture: x86_64
    CPUs: 2
    Total Memory: 1.934 GiB
    Name: moby
    ID: 4LYM:R5T5:6CPZ:Z2KC:YQ4R:NGN4:V6SR:DF7E:YPYO:7FHY:EQW5:2T7W
    Docker Root Dir: /var/lib/docker
    Debug Mode (client): false
    Debug Mode (server): true
    File Descriptors: 13
    Goroutines: 21
    System Time: 2017-02-28T18:54:13.7726687Z
    EventsListeners: 0
    Registry: https://index.docker.io/v1/
    Experimental: true
    Insecure Registries:
    127.0.0.0/8
    Live Restore Enabled: false
    

  • Configure PM2 module with linked docker container
  • Generate all locales in a docker image
  • alpine linux docker image, console encoding trouble
  • docker cp does not copy recursively
  • Docker run with “-v” create another shared directory
  • Docker Remote CA Verification
  • One Solution collect form web for “Is Docker running within WSL or connecting back to Windows?”

    The Docker daemon can’t run under WSL as it doesn’t implement the necessary kernel ABI’s. If you’re running Docker for Windows, you are probably connecting to the Hyper-V virtual machine that it manages.

    Because it’s on a different machine, you will not be able to mount WSL directories as Docker volumes, but you can build images from a WSL directory. This is because on a build, the client creates a tarball and sends it to the daemon.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.