Container ohne Dockerfile bauen

Container ohne Dockerfile bauen

- Matt

Für einen einfachen Dienst braucht es kein Dockerfile mehr:

dotnet publish -c Release /t:PublishContainer

Einstellungen kommen in die Projektdatei:

<PropertyGroup>
  <ContainerRepository>meinedienste/api</ContainerRepository>
  <ContainerImageTag>1.4.2</ContainerImageTag>
  <ContainerBaseImage>mcr.microsoft.com/dotnet/aspnet:10.0-noble-chiseled</ContainerBaseImage>
  <ContainerUser>app</ContainerUser>
</PropertyGroup>

Das chiseled-Basisimage ist die interessante Zeile: keine Shell, kein Paketmanager, deutlich kleinere Angriffsfläche. Zum Debuggen ist genau das unangenehm, weil man sich nicht mehr hineinverbinden kann.

Sobald man mehrere Schritte oder eigene Dateien im Image braucht, ist ein Dockerfile wieder die richtige Wahl.