Do you want to try out Windows containers, but don't want to start too low level? If you are using one of the following programming languages you can benefit of already available official Docker images for Windows.
These Docker images are well maintained and you can just start and put your application code inside and run your application easily in a Windows container.
Someone else did the hard work how to install the runtime or compiler for language XYZ into Windows Server Core container or even a Nanoserver container.
So starting to work with NanoServer is really easy with Docker as you only choose the right image for the
FROM instruction in your
Dockerfile. You can start with windowsservercore images, but I encourage you to test with nanoserver as well. For these languages it is easy to switch and the final Docker images are much smaller.
So let's have a look which languages are already available. The corresponding Docker Hub page normally has a short intro how to use these Docker images.
The Go programming language is available on the Docker Hub as image
golang. To get the latest Go 1.8 for either Windows Server Core or NanoServer you choose one of these.
Have a look at the tags page if you want another version or if you want to pin a specific version of Golang.
When you hear Java you might immediately think of Oracle Java. But searching for alternatives I found three OpenJDK distros for Windows. One of them recently made it into the official
openjdk Docker images. Both Windows Server Core and NanoServer are supported.
If you prefer Oracle Java for private installations, you can build a Docker image with the Dockerfiles provided in the oracle/docker-images repository.
For Node.js there are pull requests awaiting a CI build agent for Windows to make it into the official
In the meantime you can use one of my maintained images, for example the latest Node LTS version for both Windows Server Core and NanoServer:
You also can find more tags and versions at the Docker Hub.
The script language Python is available as Windows Server Core Docker image at the official
python images. Both major versions of Python are available.
I also have a Python Docker image for NanoServer with Python 3.6 to create smaller Docker images.
Microsoft provides Linux and Windows Docker images for .NET Core at
microsoft/dotnet. For Windows it is NanoServer only, but this is no disadvantage as you should plan for the smaller NanoServer images.
For ASP.NET there are Windows Server Core Docker images for the major versions 3 and 4 with IIS installed at
The number of programming languages provided in Windows Docker images is growing. This makes it relatively easy to port Linux applications to Windows or use Docker images to distribute apps for both platforms.
Haven't found an image for your language? Have I missed something? Please let me know, and use the comments below if you have questions how to get started. Thanks for your interest. You can follow me on Twitter @stefscherer.