Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Conseil / Astuce
Ce contenu est un extrait du livre électronique 'Architecture des microservices .NET pour les applications .NET conteneurisées', disponible sur .NET Docs ou en tant que PDF téléchargeable gratuitement, lisible hors ligne.
Lorsque vous utilisez Docker, un développeur crée une application ou un service et les empaquette et ses dépendances dans une image conteneur. Une image est une représentation statique de l’application ou du service, de leur configuration et de leurs dépendances.
Pour exécuter l’application ou le service, l’image de l’application est instanciée pour créer un conteneur, qui s’exécute sur l’hôte Docker. Les conteneurs sont initialement testés dans un environnement de développement ou un PC.
Les développeurs doivent stocker des images dans un registre, qui joue le rôle de bibliothèque d’images et est nécessaire lors du déploiement sur des orchestrateurs de production. Docker gère un registre public via Docker Hub ; d’autres fournisseurs fournissent des registres pour différentes collections d’images, notamment Azure Container Registry. Les entreprises peuvent également disposer d’un registre privé local pour leurs propres images Docker.
La figure 2-4 montre comment les images et les registres dans Docker sont liés à d’autres composants. Il affiche également les multiples offres de registre des fournisseurs.
Figure 2-4. Taxonomie des termes et concepts Docker
Le Registre est semblable à une bibliothèque où les images sont stockées et disponibles pour être extraites pour créer des conteneurs afin d’exécuter des services ou des applications web. Il existe des registres Docker privés locaux et sur le cloud public. Docker Hub est un registre public géré par Docker, le long du Registre de confiance Docker, une solution de niveau entreprise, Azure offre Azure Container Registry. AWS, Google et d’autres ont également des registres de conteneurs.
La mise en place d’images dans un registre vous permet de stocker des bits d’application statiques et immuables, y compris toutes leurs dépendances au niveau de l’infrastructure. Ces images peuvent ensuite être mises en version et déployées dans plusieurs environnements et fournissent donc une unité de déploiement cohérente.
Les registres d’images privées, hébergés localement ou dans le cloud, sont recommandés lorsque :
Vos images ne doivent pas être partagées publiquement en raison de la confidentialité.
Vous souhaitez disposer d’une latence réseau minimale entre vos images et votre environnement de déploiement choisi. Par exemple, si votre environnement de production est le cloud Azure, vous souhaitez probablement stocker vos images dans Azure Container Registry afin que la latence réseau soit minimale. De la même façon, si votre environnement de production est local, vous souhaiterez peut-être disposer d’un registre docker approuvé local disponible dans le même réseau local.