Life's random bits By b1thunt3r (aka Ishan Jain)…
.NET Core Docker Images

.NET Core Docker Images

Ishan jain
Since the release of .NET Core, it is almost a child's play to run .NET on other platform then Windows. With .NET Core one can officially target Windows, Linux and even macOS. But with docker you can run .NET Core on (almost) anything.

Disclaimer: Currently I am employed by Microsoft, but my views and thoughts are still my own. The reason I joined Microsoft was, the work Microsoft have been doing for last couple of years in Open Source Space. Today I am a advocate for Open Source representing Microsoft.

Docker enables one to run (almost) anything on (almost) anything. Microsoft provides docker images for Windows and several flavours of Linux, there also images for amd64 as well as for arm32 and arm64.
In other words, you can run .NET Core on most of the single board computers like RaspberryPI and Pine64.

.NET Core container images are available for SDK, runtime and ASP.NET Core runtime. There is also images if you only need to have the dependencies for self-contained applications. Microsoft also provides images with samples.

You can run the container with the following command:

docker run -ti mcr.microsoft.com/dotnet/core/<image>:<version>-<distro>

You can replace <image>, <version> and <distro> with apropriate values.

i.e. to run SDK 2.2 on Ubuntu 18.04 (Bionic Beaver):

docker run -ti mcr.microsoft.com/dotnet/core/sdk:2.2-bionic

Update: If Experimental features in Docker Desktop for Windows is enabled, you can run Linux Containers on Windows.

Another thing I noticed is that you cannot run Snappy. Has to do something with Snappy needs kernel access. On other had it is, in some ways, competing with Docker.