Megosztás a következőn keresztül:


A .NET-tárolókkal megcélozandó operációs rendszer

Jótanács

Ez a tartalom egy részlet a '.NET Microservices Architecture for Containerized .NET Applications' című eBook-ból, amely elérhető a .NET Docs oldalon, vagy ingyenesen letölthető PDF formátumban, amely offline módban is olvasható.

.NET mikroszolgáltatások architektúrája konténerizált .NET alkalmazásokhoz e-könyv borító miniatűr.

Tekintettel a Docker által támogatott operációs rendszerek sokféleségére, valamint a .NET-keretrendszer és a .NET 8 közötti különbségekre, a használt keretrendszertől függően meg kell céloznia egy adott operációs rendszert és adott verziókat.

Windows esetén használhatja a Windows Server Core-t vagy a Windows Nano Servert. Ezek a Windows-verziók különböző jellemzőket biztosítanak (az IIS a Windows Server Core-ban, szemben egy saját üzemeltetésű webkiszolgálóval, mint amilyen a Kestrel a Nano Serverben), amelyekre a .NET-keretrendszerre vagy a .NET 8-ra lehet szüksége.

Linux esetén több disztribúció érhető el és támogatott a hivatalos .NET Docker-rendszerképekben (például a Debianban).

A 3–1. ábrán az operációs rendszer lehetséges verziója látható a használt .NET-keretrendszertől függően.

A .NET-tárolókhoz használandó operációs rendszer ábrája.

3–1. ábra. A .NET-keretrendszer verzióitól függően megcélzott operációs rendszerek

Az örökölt .NET-keretrendszeralkalmazások üzembe helyezésekor a Windows Server Core-t kell céloznia, amely kompatibilis az örökölt alkalmazásokkal és az IIS-vel, de nagyobb képpel rendelkezik. A .NET 8-alkalmazások telepítésekor megcélzhatja a felhőoptimalizált Windows Nano Servert, a Kestrelt használja, és kisebb, és gyorsabban indul el. A Linuxot is megcélozhatja, támogatva a Debiant, az Alpinet és másokat.

Saját Docker-rendszerképet is létrehozhat olyan esetekben, amikor egy másik Linux-disztribúciót szeretne használni, vagy ahol a Microsoft által nem biztosított verziójú lemezképet szeretne használni. Létrehozhat például egy lemezképet ASP.NET Core-val, amely a hagyományos .NET-keretrendszeren és a Windows Server Core-on fut, ami a Docker nem túl gyakori forgatókönyve.

Amikor hozzáadja a rendszerkép nevét a Dockerfile-fájlhoz, a használt címkétől függően kiválaszthatja az operációs rendszert és a verziót, ahogyan az alábbi példákban is látható:

Kép Megjegyzések
mcr.microsoft.com/dotnet/runtime:8.0 .NET 8 többarchitektúra: Támogatja a Linuxot és a Windows Nano Servert a Docker-gazdagéptől függően.
mcr.microsoft.com/dotnet/aspnet:8.0 ASP.NET Core 8.0 többarchitektúra: Támogatja a Linuxot és a Windows Nano Servert a Docker-gazdagéptől függően.
Az aspnetcore-rendszerkép néhány optimalizálást biztosít ASP.NET Core-hoz.
mcr.microsoft.com/dotnet/aspnet:8.0-bullseye-slim .NET 8 futtatókörnyezet kizárólagos használata Linux Debian-disztribúción
mcr.microsoft.com/dotnet/aspnet:8.0-nanoserver-1809 .NET 8 futtatókörnyezet csak Windows Nano Serveren (Windows Server 1809-es verzió)