9.0
(Standard Support)docker pull mcr.microsoft.com/dotnet/sdk:9.0
8.0
(Long-Term Support)docker pull mcr.microsoft.com/dotnet/sdk:8.0
6.0
(Long-Term Support)docker pull mcr.microsoft.com/dotnet/sdk:6.0
This image contains the .NET SDK which is comprised of three parts:
- .NET CLI
- .NET runtime
- ASP.NET Core
Use this image for your development process (developing, building and testing applications).
Watch discussions for Docker-related .NET announcements.
The .NET Docker samples show various ways to use .NET and Docker together. See Building Docker Images for .NET Applications to learn more.
- .NET Docker Sample - This sample builds, tests, and runs the sample. It includes and builds multiple projects.
- ASP.NET Core Docker Sample - This sample demonstrates using Docker with an ASP.NET Core Web App.
The following samples show how to develop, build and test .NET applications with Docker without the need to install the .NET SDK.
- Build .NET Applications with SDK Container
- Test .NET Applications with SDK Container
- Run .NET Applications with SDK Container
.NET container images have several variants that offer different combinations of flexibility and deployment size. The Image Variants documentation contains a summary of the image variants and their use-cases.
.NET:
- dotnet: .NET
- dotnet/aspnet: ASP.NET Core Runtime
- dotnet/runtime: .NET Runtime
- dotnet/runtime-deps: .NET Runtime Dependencies
- dotnet/monitor: .NET Monitor Tool
- dotnet/aspire-dashboard: .NET Aspire Dashboard
- dotnet/nightly/sdk: .NET SDK (Preview)
- dotnet/samples: .NET Samples
.NET Framework:
- dotnet/framework: .NET Framework, ASP.NET and WCF
- dotnet/framework/samples: .NET Framework, ASP.NET and WCF Samples
Tags | Dockerfile | OS Version |
---|---|---|
9.0.100-bookworm-slim-amd64, 9.0-bookworm-slim-amd64, 9.0.100-bookworm-slim, 9.0-bookworm-slim, 9.0.100, 9.0, latest | Dockerfile | Debian 12 |
9.0.100-alpine3.20-amd64, 9.0-alpine3.20-amd64, 9.0-alpine-amd64, 9.0.100-alpine3.20, 9.0-alpine3.20, 9.0-alpine | Dockerfile | Alpine 3.20 |
9.0.100-noble-amd64, 9.0-noble-amd64, 9.0.100-noble, 9.0-noble | Dockerfile | Ubuntu 24.04 |
9.0.100-azurelinux3.0-amd64, 9.0-azurelinux3.0-amd64, 9.0.100-azurelinux3.0, 9.0-azurelinux3.0 | Dockerfile | Azure Linux 3.0 |
8.0.404-bookworm-slim-amd64, 8.0-bookworm-slim-amd64, 8.0.404-bookworm-slim, 8.0-bookworm-slim, 8.0.404, 8.0 | Dockerfile | Debian 12 |
8.0.404-alpine3.20-amd64, 8.0-alpine3.20-amd64, 8.0-alpine-amd64, 8.0.404-alpine3.20, 8.0-alpine3.20, 8.0-alpine | Dockerfile | Alpine 3.20 |
8.0.404-noble-amd64, 8.0-noble-amd64, 8.0.404-noble, 8.0-noble | Dockerfile | Ubuntu 24.04 |
8.0.404-jammy-amd64, 8.0-jammy-amd64, 8.0.404-jammy, 8.0-jammy | Dockerfile | Ubuntu 22.04 |
8.0.404-azurelinux3.0-amd64, 8.0-azurelinux3.0-amd64, 8.0.404-azurelinux3.0, 8.0-azurelinux3.0 | Dockerfile | Azure Linux 3.0 |
8.0.404-cbl-mariner2.0-amd64, 8.0-cbl-mariner2.0-amd64, 8.0.404-cbl-mariner2.0, 8.0-cbl-mariner2.0 | Dockerfile | CBL-Mariner 2.0 |
6.0.428-1-bookworm-slim-amd64, 6.0-bookworm-slim-amd64, 6.0.428-1-bookworm-slim, 6.0-bookworm-slim | Dockerfile | Debian 12 |
6.0.428-1-bullseye-slim-amd64, 6.0-bullseye-slim-amd64, 6.0.428-1-bullseye-slim, 6.0-bullseye-slim, 6.0.428-1, 6.0 | Dockerfile | Debian 11 |
6.0.428-1-alpine3.20-amd64, 6.0-alpine3.20-amd64, 6.0-alpine-amd64, 6.0.428-1-alpine3.20, 6.0-alpine3.20, 6.0-alpine | Dockerfile | Alpine 3.20 |
6.0.428-1-jammy-amd64, 6.0-jammy-amd64, 6.0.428-1-jammy, 6.0-jammy | Dockerfile | Ubuntu 22.04 |
6.0.428-1-cbl-mariner2.0-amd64, 6.0-cbl-mariner2.0-amd64, 6.0.428-1-cbl-mariner2.0, 6.0-cbl-mariner2.0 | Dockerfile | CBL-Mariner 2.0 |
6.0.428-1-focal-amd64, 6.0-focal-amd64, 6.0.428-1-focal, 6.0-focal | Dockerfile | Ubuntu 20.04 |
Tags | Dockerfile | OS Version |
---|---|---|
9.0.100-bookworm-slim-arm64v8, 9.0-bookworm-slim-arm64v8, 9.0.100-bookworm-slim, 9.0-bookworm-slim, 9.0.100, 9.0, latest | Dockerfile | Debian 12 |
9.0.100-alpine3.20-arm64v8, 9.0-alpine3.20-arm64v8, 9.0-alpine-arm64v8, 9.0.100-alpine3.20, 9.0-alpine3.20, 9.0-alpine | Dockerfile | Alpine 3.20 |
9.0.100-noble-arm64v8, 9.0-noble-arm64v8, 9.0.100-noble, 9.0-noble | Dockerfile | Ubuntu 24.04 |
9.0.100-azurelinux3.0-arm64v8, 9.0-azurelinux3.0-arm64v8, 9.0.100-azurelinux3.0, 9.0-azurelinux3.0 | Dockerfile | Azure Linux 3.0 |
8.0.404-bookworm-slim-arm64v8, 8.0-bookworm-slim-arm64v8, 8.0.404-bookworm-slim, 8.0-bookworm-slim, 8.0.404, 8.0 | Dockerfile | Debian 12 |
8.0.404-alpine3.20-arm64v8, 8.0-alpine3.20-arm64v8, 8.0-alpine-arm64v8, 8.0.404-alpine3.20, 8.0-alpine3.20, 8.0-alpine | Dockerfile | Alpine 3.20 |
8.0.404-noble-arm64v8, 8.0-noble-arm64v8, 8.0.404-noble, 8.0-noble | Dockerfile | Ubuntu 24.04 |
8.0.404-jammy-arm64v8, 8.0-jammy-arm64v8, 8.0.404-jammy, 8.0-jammy | Dockerfile | Ubuntu 22.04 |
8.0.404-azurelinux3.0-arm64v8, 8.0-azurelinux3.0-arm64v8, 8.0.404-azurelinux3.0, 8.0-azurelinux3.0 | Dockerfile | Azure Linux 3.0 |
8.0.404-cbl-mariner2.0-arm64v8, 8.0-cbl-mariner2.0-arm64v8, 8.0.404-cbl-mariner2.0, 8.0-cbl-mariner2.0 | Dockerfile | CBL-Mariner 2.0 |
6.0.428-1-bookworm-slim-arm64v8, 6.0-bookworm-slim-arm64v8, 6.0.428-1-bookworm-slim, 6.0-bookworm-slim | Dockerfile | Debian 12 |
6.0.428-1-bullseye-slim-arm64v8, 6.0-bullseye-slim-arm64v8, 6.0.428-1-bullseye-slim, 6.0-bullseye-slim, 6.0.428-1, 6.0 | Dockerfile | Debian 11 |
6.0.428-1-alpine3.20-arm64v8, 6.0-alpine3.20-arm64v8, 6.0-alpine-arm64v8, 6.0.428-1-alpine3.20, 6.0-alpine3.20, 6.0-alpine | Dockerfile | Alpine 3.20 |
6.0.428-1-jammy-arm64v8, 6.0-jammy-arm64v8, 6.0.428-1-jammy, 6.0-jammy | Dockerfile | Ubuntu 22.04 |
6.0.428-1-cbl-mariner2.0-arm64v8, 6.0-cbl-mariner2.0-arm64v8, 6.0.428-1-cbl-mariner2.0, 6.0-cbl-mariner2.0 | Dockerfile | CBL-Mariner 2.0 |
6.0.428-1-focal-arm64v8, 6.0-focal-arm64v8, 6.0.428-1-focal, 6.0-focal | Dockerfile | Ubuntu 20.04 |
Tags | Dockerfile | OS Version |
---|---|---|
9.0.100-bookworm-slim-arm32v7, 9.0-bookworm-slim-arm32v7, 9.0.100-bookworm-slim, 9.0-bookworm-slim, 9.0.100, 9.0, latest | Dockerfile | Debian 12 |
9.0.100-alpine3.20-arm32v7, 9.0-alpine3.20-arm32v7, 9.0-alpine-arm32v7, 9.0.100-alpine3.20, 9.0-alpine3.20, 9.0-alpine | Dockerfile | Alpine 3.20 |
9.0.100-noble-arm32v7, 9.0-noble-arm32v7, 9.0.100-noble, 9.0-noble | Dockerfile | Ubuntu 24.04 |
8.0.404-bookworm-slim-arm32v7, 8.0-bookworm-slim-arm32v7, 8.0.404-bookworm-slim, 8.0-bookworm-slim, 8.0.404, 8.0 | Dockerfile | Debian 12 |
8.0.404-alpine3.20-arm32v7, 8.0-alpine3.20-arm32v7, 8.0-alpine-arm32v7, 8.0.404-alpine3.20, 8.0-alpine3.20, 8.0-alpine | Dockerfile | Alpine 3.20 |
8.0.404-jammy-arm32v7, 8.0-jammy-arm32v7, 8.0.404-jammy, 8.0-jammy | Dockerfile | Ubuntu 22.04 |
6.0.428-1-bookworm-slim-arm32v7, 6.0-bookworm-slim-arm32v7, 6.0.428-1-bookworm-slim, 6.0-bookworm-slim | Dockerfile | Debian 12 |
6.0.428-1-bullseye-slim-arm32v7, 6.0-bullseye-slim-arm32v7, 6.0.428-1-bullseye-slim, 6.0-bullseye-slim, 6.0.428-1, 6.0 | Dockerfile | Debian 11 |
6.0.428-1-alpine3.20-arm32v7, 6.0-alpine3.20-arm32v7, 6.0-alpine-arm32v7, 6.0.428-1-alpine3.20, 6.0-alpine3.20, 6.0-alpine | Dockerfile | Alpine 3.20 |
6.0.428-1-jammy-arm32v7, 6.0-jammy-arm32v7, 6.0.428-1-jammy, 6.0-jammy | Dockerfile | Ubuntu 22.04 |
6.0.428-1-focal-arm32v7, 6.0-focal-arm32v7, 6.0.428-1-focal, 6.0-focal | Dockerfile | Ubuntu 20.04 |
Tag | Dockerfile |
---|---|
9.0.100-nanoserver-ltsc2022, 9.0-nanoserver-ltsc2022 | Dockerfile |
8.0.404-nanoserver-ltsc2022, 8.0-nanoserver-ltsc2022 | Dockerfile |
6.0.428-1-nanoserver-ltsc2022, 6.0-nanoserver-ltsc2022, 6.0.428-1, 6.0 | Dockerfile |
Tag | Dockerfile |
---|---|
9.0.100-windowsservercore-ltsc2022, 9.0-windowsservercore-ltsc2022 | Dockerfile |
8.0.404-windowsservercore-ltsc2022, 8.0-windowsservercore-ltsc2022 | Dockerfile |
6.0.428-1-windowsservercore-ltsc2022, 6.0-windowsservercore-ltsc2022 | Dockerfile |
Tag | Dockerfile |
---|---|
9.0.100-nanoserver-1809, 9.0-nanoserver-1809 | Dockerfile |
8.0.404-nanoserver-1809, 8.0-nanoserver-1809 | Dockerfile |
6.0.428-1-nanoserver-1809, 6.0-nanoserver-1809, 6.0.428-1, 6.0 | Dockerfile |
Tag | Dockerfile |
---|---|
9.0.100-windowsservercore-ltsc2019, 9.0-windowsservercore-ltsc2019 | Dockerfile |
8.0.404-windowsservercore-ltsc2019, 8.0-windowsservercore-ltsc2019 | Dockerfile |
6.0.428-1-windowsservercore-ltsc2019, 6.0-windowsservercore-ltsc2019 | Dockerfile |
Tags not listed in the table above are not supported. See the Supported Tags Policy. See the full list of tags for all supported and unsupported tags.
- Base Image Updates: Images are re-built within 12 hours of any updates to their base images (e.g. debian:bookworm-slim, windows/nanoserver:ltsc2022, etc.).
- .NET Releases: Images are re-built as part of releasing new .NET versions. This includes new major versions, minor versions, and servicing releases.
- Critical CVEs: Images are re-built to pick up critical CVE fixes as described by the CVE Update Policy below.
- Monthly Re-builds: Images are re-built monthly, typically on the second Tuesday of the month, in order to pick up lower-severity CVE fixes.
- Out-Of-Band Updates: Images can sometimes be re-built when out-of-band updates are necessary to address critical issues. If this happens, new fixed version tags will be updated according to the Fixed version tags documentation.
.NET container images are regularly monitored for the presence of CVEs. A given image will be rebuilt to pick up fixes for a CVE when:
- We detect the image contains a CVE with a CVSS score of "Critical"
- AND the CVE is in a package that is added in our Dockerfile layers (meaning the CVE is in a package we explicitly install or any transitive dependencies of those packages)
- AND there is a CVE fix for the package available in the affected base image's package repository.
Please refer to the Security Policy and Container Vulnerability Workflow for more detail about what to do when a CVE is encountered in a .NET image.
- Legal Notice: Container License Information
- .NET license
- Discover licensing for Linux image contents
- Windows base image license (only applies to Windows containers)
- Pricing and licensing for Windows Server