Immagini di base dei contenitori

Si applica a: Windows Server 2022, Windows Server 2019, Windows Server 2016

Windows offre quattro immagini di base del contenitore che gli utenti possono usare per la compilazione. Ogni immagine di base è un tipo diverso del Windows o del sistema operativo server Windows, ha un footprint su disco diverso e ha un set diverso di API Windows.

Individuazione dell'immagine

Tutte le immagini di base del contenitore di Windows sono individuabili tramite Docker Hub. Le immagini di base del contenitore di Windows sono gestite da mcr.microsoft.com, il Registro contenitori di Microsoft. Ecco perché i comandi pull per le immagini di base del contenitore di Windows sono simili ai seguenti:

docker pull mcr.microsoft.com/windows/servercore:ltsc2022

Il MCR non ha una propria esperienza di catalogo ed è destinato a supportare cataloghi esistenti, ad esempio Docker Hub. Grazie al footprint globale di Azure e in combinazione con la rete CDN di Azure, il Registro contenitori di Microsoft offre un'esperienza di pull dell'immagine coerente e veloce. I clienti di Azure, che eseguono i loro carichi di lavoro in Azure, traggono vantaggio dai miglioramenti delle prestazioni di rete, nonché da una stretta integrazione con il Registro contenitori di Microsoft (origine delle immagini del contenitore di Microsoft), Azure Marketplace e i servizi Azure in continua espansione che offrono contenitori come il formato del pacchetto di distribuzione.

Scelta di un'immagine di base

Come scegliere l'immagine di base corretta per la compilazione? Per la maggior parte degli utenti, Windows Server Core e Nanoserver saranno le immagini più appropriate da usare. Ogni immagine di base è brevemente descritta di seguito:

  • Nano Serverè un Windows ultraleggero che offre per lo sviluppo di nuove applicazioni.
  • Server Coreè di dimensioni medie e un'ottima opzione per le app server di Windows Windows server.
  • Windowsè l'immagine più grande e include il supporto completo dell'API Windows per i carichi di lavoro.
  • Windows Serverè leggermente più piccola dell'immagine Windows, ha il supporto completo dell'API Windows e consente di usare più funzionalità del server.

Indicazioni

Anche se si è liberi di scegliere quale immagine si vuole usare, ecco alcune linee guida per facilitare la scelta:

  • L'applicazione richiede la versione completa di .NET Framework? In caso affermativo, devi specificare Windows Server Core come destinazione.
  • Stai creando un'app di Windows basata su .NET Core? In caso affermativo, devi specificare Nanoserver come destinazione.
  • Nell'immagine del contenitore di Windows Server Core manca una dipendenza necessaria all'app? In caso affermativo, devi cercare di specificare Windows come destinazione. Questa immagine è molto più grande delle altre immagini di base, ma contiene molte delle librerie Windows principali, ad esempio la libreria GDI.
  • Sei un partecipante al Programma Windows Insider? In caso affermativo, dovresti usare la versione Insider delle immagini. Per altre informazioni, vedere "Immagini di base per Windows insider" di seguito.
  • È necessario il supporto dell'accelerazione GPU per i carichi di lavoro del contenitore? In caso affermativo, è consigliabile usare l'immagine per includere l'accelerazione Windows Server hardware per i carichi di lavoro Windows contenitori.

Suggerimento

Molti utenti di Windows vogliono distribuire in un contenitore le applicazioni che hanno una dipendenza da .NET. Oltre alle quattro immagini di base descritte in questo articolo, Microsoft pubblica diverse immagini del contenitore di Windows preconfigurate con i framework Microsoft più diffusi, ad esempio l'immagine di .NET Framework e l'immagine di ASP .NET.

Windows e Windows Server

L'immagine Windows Server (3,1 GB) è leggermente più piccola rispetto all'immagine Windows (3,4 GB). L'immagine Windows Server eredita anche tutti i miglioramenti delle prestazioni e dell'affidabilità dall'immagine Server Core, ha supporto GPU e non ha limiti per le connessioni IIS. Per usare l'immagine più recente Windows Server, è necessaria un'installazione Windows Server 2022. L'immagine Windows non è disponibile per Windows Server 2022.

Immagini di base per i partecipanti al Programma Windows Insider

Microsoft fornisce le versioni "Insider" di ogni immagine di base del contenitore. Queste immagini del contenitore Insider contengono lo sviluppo delle funzionalità più recenti e importanti delle immagini del contenitore. Quando esegui un host che rappresenta una versione Insider di Windows (Windows Insider o Windows Server Insider), è preferibile usare queste immagini. Le immagini insider seguenti sono disponibili in Docker Hub:

Per altre informazioni, leggi Usare i contenitori con il Programma Windows Insider.

Confronto tra Windows Server Core e Nano Server

Windows Server Core e Nanoserver sono le immagini di base più comuni di destinazione. La differenza principale tra queste immagini è che Nano Server dispone di una superficie API significativamente inferiore. PowerShell, WMI e lo stack di manutenzione di Windows sono assenti dall'immagine di Nano Server.

Nano Server è stato progettato per fornire una superficie API appena sufficiente per eseguire app che hanno una dipendenza da .NET Core o da altri framework open source moderni. Come conseguenza della superficie API ridotta, l'immagine di Nano Server dispone di un footprint su disco significativamente inferiore rispetto alle altre immagini di base di Windows. Si tenga presente che è sempre possibile aggiungere livelli a Nano Server, in base alle esigenze. Per un esempio, vedi il Dockerfile .NET Core per Nano Server.