Linux amd64 tags
Windows Server, version 1709 amd64 tags
Windows Server 2016 amd64 tags
Linux arm32 tags
.NET Core Docker Samples
This repo contains samples that demonstrate various .NET Core Docker configurations.
You can see the source for these samples at dotnet/dotnet-docker/samples on GitHub. They can be updated by creating a pull request.
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 sample .NET Core application within a container
dotnetapp tag is a sample console application that depends on the .NET Core Runtime image. You can run it in a container by running the following command.
docker run --rm microsoft/dotnet-samples:dotnetapp
Run a sample ASP.NET Core application within a container
aspnetapp tag is a sample ASP.NET Web application that depends on the .NET Core Runtime image. You can run it in a container by running the following command.
docker run --rm -p 8000:80 microsoft/dotnet-samples:aspnetapp
After the application starts, navigate to
http://localhost:8000 in your web browser. See View the ASP.NET Core app in a running container on Windows for Windows-specific instructions.
microsoft/dotnet-sample images come in multiple flavors.
This image demonstrates the minimal use of the .NET Core Runtime image.
This image demonstrates an ASP.NET Core web application using the .NET Core Runtime image.
Note: The instructions above work for both Linux and Windows containers. The .NET Core docker images use multi-arch tags, which abstract away different operating system choices for most use-cases.
See the following related repos for other application types:
- microsoft/dotnet for .NET Core images.
- microsoft/aspnetcore for ASP.NET Core images.
- microsoft/aspnet for ASP.NET Web Forms and MVC images.
- microsoft/dotnet-framework for .NET Framework images (for web applications, see microsoft/aspnet).
View license information for the software contained in this image.
The .NET Core Windows images use the same license as the Windows Server 2016 Nano Server base image, as follows:
MICROSOFT SOFTWARE SUPPLEMENTAL LICENSE TERMS
CONTAINER OS IMAGE
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.
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.