Images de base de conteneur

S’applique à : Windows Server 2022, Windows Server 2019, Windows Server 2016

Windows propose quatre images de base de conteneur à partir desquelles les utilisateurs peuvent créer. Chaque image de base est un type distinct du système d’exploitation Windows ou Windows Server, occupe un espace sur disque spécifique et contient une quantité différente de l’ensemble d’API Windows.

Détection d’images

Toutes les images de base de conteneur Windows sont détectables via le Docker Hub. Les images de base de conteneur Windows proprement dites sont servies à partir de mcr.microsoft.com, le Registre de conteneurs Microsoft. C’est pourquoi les commandes d’extraction des images de base de conteneur Windows se présentent comme suit :

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

Le Registre de conteneurs Microsoft n’a pas son propre catalogue et est destiné à prendre en charge des catalogues existants tels que Docker Hub. Grâce à l’empreinte globale d’Azure et à Azure CDN, le MCR offre une expérience d’extraction d’image cohérente et rapide. Les clients Azure, qui exécutent leurs charges de travail dans Azure, bénéficient des améliorations des performances dans le réseau, ainsi que de l’intégration étroite avec le Registre de conteneurs Microsoft (source pour les images de conteneur Microsoft), de la Place de marché Azure et du nombre croissant de services dans Azure qui proposent des conteneurs en tant que format de package de déploiement.

Choix d’une image de base

Comment choisir l’image de base appropriée à partir de laquelle créer ? Pour la plupart des utilisateurs, Windows Server Core et Nanoserver constitueront l’image la plus appropriée à utiliser. Chaque image de base est brièvement décrite ci-dessous :

  • Nano Server est une offre Windows ultralight pour le développement de nouvelles applications.
  • Server Core est de taille moyenne et constitue une bonne option pour la migration « lift and shift » des applications Windows Server.
  • Windows est la plus grande image et dispose d’une prise en charge complète des API Windows pour les charges de travail.
  • Windows Server est légèrement plus petite que l’image Windows, dispose d’une prise en charge complète des API Windows et vous permet d’utiliser davantage de fonctionnalités serveur.

Consignes

Si vous êtes libre de cibler l’image que vous voulez utiliser, voici quelques recommandations pour vous aider à orienter votre choix :

  • Votre application a-t-elle besoin du .NET Framework complet ? Si la réponse à cette question est affirmative, vous devez cibler Windows Server Core.
  • Créez-vous une application Windows basée sur .NET Core ? Si la réponse à cette question est affirmative, vous devez cibler Nanoserver.
  • L’image du conteneur Windows Server Core manque-t-elle d’une dépendance dont votre application a besoin ? Si la réponse à cette question est affirmative, vous devez tenter de cibler Windows. Cette image est beaucoup plus volumineuse que les autres images de base, mais elle contient un grand nombre des bibliothèques principales de Windows (telles que la bibliothèque GDI).
  • Participez-vous au programme Windows Insider ? Si c’est le cas, vous devez envisager d’utiliser la version Insider des images. Pour plus d’informations, consultez « Images de base pour les participants au programme Windows Insider » ci-dessous.
  • Avez-vous besoin de la prise en charge de l’accélération GPU pour vos charges de travail de conteneur ? Si c’est le cas, vous devez envisager d’utiliser l’image Windows Server afin d’inclure l’accélération matérielle pour vos charges de travail de conteneurs Windows.

Conseil

De nombreux utilisateurs de Windows souhaitent placer en conteneur des applications qui dépendent de .NET. En plus des quatre images de base décrites ici, Microsoft publie plusieurs images de conteneur Windows qui sont préconfigurées avec des infrastructures Microsoft populaires, telles que les images .NET Framework et ASP.NET.

Windows et Windows Server

L’image Windows Server (3,1 Go) est légèrement plus petite que l’image Windows (3,4 Go). L’image Windows Server hérite également de toutes les améliorations des performances et de la fiabilité de l’image Server Core, dispose de la prise en charge des GPU et n’a pas de limites en ce qui concerne les connexions IIS. Pour utiliser la dernière image Windows Server, vous aurez besoin d’une installation de Windows Server 2022. L’image Windows n’est pas disponible pour Windows Server 2022.

Images de base pour les participants au programme Windows Insider

Microsoft fournit des versions « Insider » de chaque image de base de conteneur. Ces images de conteneur pour les participants au programme Windows Insider contiennent le développement de fonctionnalités le plus récent et le plus volumineux de nos images de conteneur. L’usage de ces images est recommandé si vous exécutez un ordinateur hôte qui est une version « Insider » de Windows (Windows Insider ou Windows Server Insider). Les images « Insider » suivantes sont disponibles sur Docker Hub :

Pour en savoir plus, lisez Utiliser des conteneurs avec le programme Windows Insider.

Windows Server Core et Nano Server

Windows Server Core et Nanoserver sont les images de base les plus courantes à cibler. La principale différence entre ces images est que la surface d’API de Nano Server est beaucoup plus petite. PowerShell, WMI et la pile de maintenance Windows sont absents de l’image Nano Server.

Nano Server a été conçu afin de fournir juste assez de surface d’API pour exécuter des applications qui ont une dépendance de .NET Core ou d’autres infrastructures open source modernes. La moindre surface d’APi est compensée par le fait que l’empreinte sur disque de l’image Nano Server est sensiblement plus petite que celle des autres images de base Windows. N’oubliez pas que vous pouvez ajouter autant de couches que vous le souhaitez sur Nano Server. Pour obtenir un exemple, consultez le fichier Dockerfile Nano Server .NET Core.