Running .Net Core in Docker in Windows Subsystem for Linux

Practically I want to play with .NET Core within Docker.

So as I understand it from this post to give myself the best flexibility I would install “Docker For Windows”. Means I can ultimately deploy my .Core app to a container that is either a Windows or a Linux container. However the Linux container is still a Hyper-V managed Linux container.

  • Bootstraping Percona Xtradb Cluster in Docker gives the error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
  • Suppressing interactive output in Gradle exec tasks
  • Cross container communication with Docker
  • How do I hook up a Node/React application to a remote Informix server?
  • How to get the IP address of the docker host from inside a docker container
  • Error while is docker pull image
  • 1) Is there a way to instead use the Windows Subsystem for Linux (WSL) to do this in the Windows 10 Creators Update? Seems like less overhead than have Windows/Docker manage a separate Linux VM for me?

  • Docker Compose: Allow images to access host resources (like postgresql)
  • Docker application Portability in Openshift
  • docker build access host folder
  • Outbound telnet connection from Docker container refused but works fine on host
  • Can a docker image based on Ubuntu run in Redhat?
  • Accessing Elastic Beanstalk environment properties in Docker
  • One Solution collect form web for “Running .Net Core in Docker in Windows Subsystem for Linux”

    No, running Docker containers in WSL is not supported (link mine):

    The docker engine is not a supported scenario in the short term. I would suggest hitting our User Voice page and upvoting Docker if you’re looking to run the docker engine.

    The docker client however should be running in build 14342. I have been able to run the docker client and connect to a docker engine running in a VM.

    As to why it’s not supported:

    WSL is a clean-room kernel reimplementation. So it can’t, for both technical and legal reasons, simply take the kernel components of Docker and “make it work”. They would need to reverse-engineer years of ongoing kernel development and reimplement it. (Or take some other nontrivial approach.)

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