back to home

dotnet / dotnet-docker

Official container images for .NET

4,838 stars
1,957 forks
125 issues
DockerfileC#PowerShell

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing dotnet/dotnet-docker in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/dotnet/dotnet-docker)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

.NET Featured Repos • dotnet/sdk: .NET SDK • dotnet/aspnet: ASP.NET Core Runtime • dotnet/runtime: .NET Runtime • dotnet/runtime-deps: .NET Runtime Dependencies • dotnet/monitor: .NET Monitor Tool • dotnet/aspire-dashboard: Aspire Dashboard • dotnet/samples: .NET Samples About .NET is a general purpose development platform maintained by Microsoft and the .NET community on GitHub. It is cross-platform, supports Windows, macOS, and Linux, and can be used in device, cloud, and embedded/IoT scenarios. .NET has several capabilities that make development productive, including automatic memory management, (runtime) generic types, reflection, asynchronous constructs, concurrency, and native interop. Millions of developers take advantage of these capabilities to efficiently build high-quality applications. You can use C# or F# to write .NET apps. • C# is 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#. • F# is a cross-platform, open-source, functional programming language for .NET. It also includes object-oriented and imperative programming. .NET 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 as part of apps, tools, new platforms and hosting services. 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. > .NET Documentation Watch discussions for Docker-related .NET announcements. Usage The .NET Docker samples show various ways to use .NET and Docker together. See Introduction to .NET and Docker to learn more. Container sample: Run a simple application You can quickly run a container with a pre-built .NET Docker image, based on the .NET console sample. Type the following command to run a sample console application: Container sample: Run a web application You can quickly run a container with a pre-built .NET Docker image, based on the ASP.NET Core sample. Type the following command to run a sample web application: After the application starts, navigate to in your web browser. You can also view the ASP.NET Core site running in the container from another machine with a local IP address such as . > Note: ASP.NET Core apps (in official images) listen to port 8080 by default, starting with .NET 8. The argument in these examples maps host port to container port ( mapping). The container will not be accessible without this mapping. ASP.NET Core can be configured to listen on a different or additional port. See Hosting ASP.NET Core Images with Docker over HTTPS to use HTTPS with this image. Image Variants .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. Distroless images .NET distroless container images contain only the minimal set of packages .NET needs, with everything else removed. Due to their limited set of packages, distroless containers have a minimized security attack surface, smaller deployment sizes, and faster start-up time compared to their non-distroless counterparts. They contain the following features: • Minimal set of packages required for .NET applications • Non-root user by default • No package manager • No shell .NET offers distroless images for Azure Linux and Ubuntu (Chiseled). Related Repositories .NET: • dotnet/nightly/sdk: .NET SDK (Preview) • dotnet/nightly/aspnet: ASP.NET Core Runtime (Preview) • dotnet/nightly/runtime: .NET Runtime (Preview) • dotnet/nightly/runtime-deps: .NET Runtime Dependencies (Preview) • dotnet/nightly/monitor: .NET Monitor Tool (Preview) • dotnet/nightly/aspire-dashboard: Aspire Dashboard (Preview) .NET Framework: • dotnet/framework: .NET Framework, ASP.NET and WCF • dotnet/framework/samples: .NET Framework, ASP.NET and WCF Samples Support Lifecycle • Microsoft Support for .NET • Supported Container Platforms Policy • Supported Tags Policy Image Update Policy • **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. CVE Update Policy .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. Feedback • File an issue • Contact Microsoft Support License • Legal Notice: Container License Information • .NET license • Discover licensing for Linux image contents • Windows base image license (only…