Public | Automated Build

Last pushed: an hour ago
Short Description
Official images for .NET Core for Linux and Windows Server 2016 Nano Server
Full Description

Linux amd64 tags

.NET Core 2.1 Preview 1 tags

Windows Server, version 1709 amd64 tags

.NET Core 2.1 Preview 1 tags

Windows Server 2016 amd64 tags

.NET Core 2.1 Preview 1 tags

Linux arm32 tags

.NET Core 2.1 Preview 1 tags

Note: .NET Core multi-arch tags, such as 2.0-runtime, have been updated to use nanoserver-1709 images if your host is Windows Server 2016 Version 1709 or higher or Windows 10 Fall Creators Update (Version 1709) or higher. You need Docker 17.10 or later to take advantage of these updated tags.

Note: The Docker images in this repo are supported by Microsoft. The arm32v7 images are in preview and have "best effort" support only by the community and .NET Core Team. Please see the arm32 announcement for more details.

Note: Watch dotnet/announcements for Docker-related .NET Core announcements.

For more information about these images and their history, please see the relevant Dockerfile. These images are updated via pull requests to the dotnet/dotnet-docker GitHub repo.

What is .NET Core?

.NET Core is a general purpose development platform maintained by Microsoft and the .NET community on GitHub. It is cross-platform, supporting Windows, macOS and Linux, and can be used in device, cloud, and embedded/IoT scenarios.

.NET has several capabilities that make development easier, including automatic memory management, (runtime) generic types, reflection, asynchrony, concurrency, and native interop. Millions of developers take advantage of these capabilities to efficiently build high-quality applications.

You can use C# to write .NET Core apps. C# is simple, powerful, type-safe, and object-oriented while retaining the expressiveness and elegance of C-style languages. Anyone familiar with C and similar languages will find it straightforward to write in C#.

.NET Core is open source (MIT and Apache 2 licenses) and was contributed to the .NET Foundation by Microsoft in 2014. It can be freely adopted by individuals and companies, including for personal, academic or commercial purposes. Multiple companies use .NET Core as part of apps, tools, new platforms and hosting services.

How to use these Images

Run a simple application within a container

You can quickly try a pre-built sample .NET Core Docker image that uses these images.

Type the following command to run a sample console application with Docker:

docker run --rm microsoft/dotnet-samples

Run a web application within a container

You can quickly try a pre-built sample ASP.NET Core Docker image that uses these images.

Type the following command to run a sample web application with Docker:

docker run --rm -p 8000:80 --name aspnetcore_sample microsoft/dotnet-samples:aspnetapp

After the application starts, navigate to http://localhost:8000 in your web browser. You need to navigate to the application via IP address instead of localhost for Windows containers, which is demonstrated in View the ASP.NET Core app in a running container on Windows.

.NET Core Docker Samples

The .NET Core Docker samples show various ways to use .NET Core and Docker together.

Building .NET Core Apps with Docker

Optimizing Container Size

ARM32 / Raspberry Pi

Image variants

The microsoft/dotnet images come in different flavors, each designed for a specific use case.

See Building Docker Images for .NET Core Applications to learn more about the various Docker images and when to use each for them.


This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of.

It contains the .NET Core SDK which is comprised of two parts:

  1. .NET Core
  2. .NET Core command line tools

Use this image for your development process (developing, building and testing applications).


This image contains the .NET Core (runtime and libraries) and is optimized for running .NET Core apps in production.


This image contains the operating system with all of the native dependencies needed by .NET Core. This is for self-contained applications.

Related Repos

.NET Core Docker Hub repos:

.NET Framework Docker Hub repos:


View license information for the software contained in this image.

The .NET Core Windows container images use the same license as the Windows Server 2016 Nano Server base image, as follows:



Microsoft Corporation (or based on where you live, one of its affiliates) (referenced as “us,” “we,” or “Microsoft”) licenses this Container OS Image supplement to you (“Supplement”). You are licensed to use this Supplement in conjunction with the underlying host operating system software (“Host Software”) solely to assist running the containers feature in the Host Software. The Host Software license terms apply to your use of the Supplement. You may not use it if you do not have a license for the Host Software. You may use this Supplement with each validly licensed copy of the Host Software.

Supported Docker versions

Supported Docker versions: the latest release (down to 1.12.2 on a best-effort basis)

Please see the Docker installation documentation for details on how to upgrade your Docker daemon.

User Feedback


If you have any problems with or questions about this image, please contact us through a GitHub issue.


You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.

Before you start to code, please read the .NET Core contribution guidelines.


You can read documentation for .NET Core, including Docker usage in the .NET Core docs. The docs are open source on GitHub. Contributions are welcome!

Docker Pull Command
Source Repository