Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

.NET 8: Container-Bauen und -Veröffentlichen ganz einfach

Unter .NET 8 lassen sich Container für Konsolenanwendungen über den Befehl "dotnet publish" erzeugen.
Mit der Neuerscheinung von .NET 8 macht die Container-Nutzung einen großen Schritt nach vorn. Die neue Version punktet mit deutlichen Verbesserungen in den Bereichen Performance, Sicherheit und Usability. Über mehrere Versionen hinweg hat Microsoft daran gearbeitet, .NET zur benutzerfreundlichsten und sichersten Container-Plattform zu machen. Builds ohne Root-Rechte, kleinere Image-Größen und die integrierte Veröffentlichung von Images. Darüber hinaus hat Microsoft einige essenzielle Funktionen realisiert, die für erweiterte Workflows unabdingbar sind. Mittlerweile empfiehlt sich dotnet publish als bevorzugter Weg zur Container-Veröffentlichung. Diese Herangehensweise macht das Erzeugen von Images besonders einfach. 

Docker

Dockerfiles erfreuen sich großer Beliebtheit; Microsoft stellt weiterhin umfangreiche Beispiele dafür bereit, einschließlich Tipps, wie man komplexe Szenarien wie Non-Root ermöglicht. Es ist nun möglich, docker init in einem .NET-Projektverzeichnis auszuführen, um ein funktionierendes Dockerfile zu erstellen. Mit wenigen Befehlen an der Kommandozeile wird ein Container für eine Konsolenanwendung erzeugt: 
$ dotnet new console -o myapp
$ cd myapp
$ dotnet publish -t:PublishContainer -p:EnableSdkContainerSupport=true
  Building image 'myapp' with tags 'latest' on top of base image 'mcr.microsoft.com/dotnet/runtime:8.0'.
  Pushed image 'myapp:latest' to local registry via 'docker'.
$ docker run --rm myapp
Hello, World! 
Die EnableSdkContainerSupport-Eigenschaft für die Veröffentlichung von Konsolenprojekten als Containerbilder ist erforderlich. Standardmäßig ist sie für Konsolen-Apps (oder jede andere App, die das Microsoft.NET.Sdk verwendet) nicht gesetzt. In ASP.NET Core-Apps ist diese implizit gesetzt. Diese Eigenschaft kann in einer Projektdatei enthalten sein (empfohlen) oder über die CLI gesetzt werden (wie oben gezeigt).Weitere Informationen
Miscellaneous

Neueste Beiträge

Übersehen seit .NET 8: TimeProvider für testbare Zeit
Seit .NET 8 gibt es TimeProvider als offizielle Zeit-Abstraktion. Doch noch zweieinhalb Jahre später ist sie in vielen Projekten unbekannt.
6 Minuten
1. Jul 2026
Design mit KI - UX goes Dev, Teil 2
Wie die Integration künstlicher Intelligenz in Designwerkzeuge die Art und Weise verändert, in der digitale Benutzeroberflächen entstehen.
6 Minuten
2. Jul 2026
KI: SQL Server versus Anwendungscode - SQL Server 2025 und Microsoft Azure AI, Teil 2
Wer SQL Server und Anwendungscode bewusst trennt, erhält eine Architektur, die sowohl performant als auch wartbar ist und sich langfristig stabil betreiben lässt.
6 Minuten

Das könnte Dich auch interessieren

Übersehen seit .NET 8: TimeProvider für testbare Zeit
Seit .NET 8 gibt es TimeProvider als offizielle Zeit-Abstraktion. Doch noch zweieinhalb Jahre später ist sie in vielen Projekten unbekannt.
6 Minuten
1. Jul 2026
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Elektronische Schaltkreise im Browser simulieren - Simulation
Statt mit Steckfeld oder Lötkolben kann man auf dieser Website Schaltungen per Drag and Drop zusammenstellen und deren Verhalten testen.
2 Minuten
26. Jul 2018
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige