Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wskazówka
Ta treść jest fragmentem eBooka "Architektura mikrousług .NET dla konteneryzowanych aplikacji .NET", dostępnego na .NET Docs lub jako bezpłatny plik PDF do pobrania i czytania w trybie offline.
Biorąc pod uwagę różnorodność systemów operacyjnych obsługiwanych przez platformę Docker oraz różnice między programem .NET Framework i platformą .NET 8, należy określić konkretny system operacyjny i określone wersje w zależności od używanej platformy.
W przypadku systemu Windows można użyć systemu Windows Server Core lub Windows Nano Server. Te wersje systemu Windows zapewniają różne cechy (usługi IIS w systemie Windows Server Core w porównaniu z własnym serwerem internetowym, takim jak Kestrel w systemie Nano Server), które mogą być wymagane odpowiednio przez program .NET Framework lub .NET 8.
W przypadku systemu Linux wiele dystrybucji jest dostępnych i obsługiwanych w oficjalnych obrazach platformy .NET Docker (takich jak Debian).
Na rysunku 3–1 można zobaczyć możliwą wersję systemu operacyjnego w zależności od używanego programu .NET Framework.
Rysunek 3–1. Systemy operacyjne, które należy uwzględnić w zależności od wersji środowiska .NET Framework
Podczas wdrażania starszych aplikacji .NET Framework powinieneś skierować się na Windows Server Core, który jest zgodny ze starszymi aplikacjami i usługami IIS, ale ma większy obraz systemu. Podczas wdrażania aplikacji platformy .NET 8 można kierować na system Windows Nano Server, który jest zoptymalizowany pod kątem chmury, używa serwera Kestrel, jest mniejszy i uruchamia się szybciej. Można również celować w Linux, wspierając Debian, Alpine i inne.
Możesz również utworzyć własny obraz platformy Docker w przypadkach, w których chcesz użyć innej dystrybucji systemu Linux lub gdzie chcesz utworzyć obraz z wersjami, które nie są dostarczane przez firmę Microsoft. Możesz na przykład utworzyć obraz z programem ASP.NET Core uruchomionym w tradycyjnych programach .NET Framework i Windows Server Core, co nie jest tak typowym scenariuszem dla platformy Docker.
Po dodaniu nazwy obrazu do pliku Dockerfile możesz wybrać system operacyjny i wersję w zależności od używanego tagu, jak w następujących przykładach:
| Obraz | Komentarze |
|---|---|
| mcr.microsoft.com/dotnet/runtime:8.0 | Architektura wielowarstwowa platformy .NET 8: obsługuje systemy Linux i Windows Nano Server w zależności od hosta platformy Docker. |
| mcr.microsoft.com/dotnet/aspnet:8.0 | ASP.NET Core 8.0 z wieloma architekturami: obsługuje systemy Linux i Windows Nano Server w zależności od hosta platformy Docker. Obraz aspnetcore ma kilka optymalizacji dla ASP.NET Core. |
| mcr.microsoft.com/dotnet/aspnet:8.0-bullseye-slim | Środowisko uruchomieniowe platformy .NET 8 w dystrybucji Debian systemu Linux |
| mcr.microsoft.com/dotnet/aspnet:8.0-nanoserver-1809 | Środowisko uruchomieniowe .NET 8 tylko w systemie Windows Nano Server (Windows Server w wersji 1809) |