Depuis la naissance de la technologie de conteneurisation, Docker est devenu un leader dans ce domaine. Cependant, une voix se fait de plus en plus forte, et elle concerne le fait que Docker n'est pas un « conteneur ». Cette phrase est incroyable, car Docker a toujours été synonyme de technologie de conteneurisation, et les gens parlent de Docker Container.
Alors, pourquoi certains disent que Docker n'est pas un « conteneur » ? Comment comprendre ce problème ? Cet article analysera pourquoi Docker n'est pas un « conteneur » du point de vue des principes et de la philosophie de mise en œuvre technique.
L'idée originale de Docker n'était pas la conteneurisation, mais l'encapsulation basée sur LXC (Linux Container) Présenté avec un ensemble de REST. Des API pour faciliter l'utilisation des développeurs d'applications, c'est le concept original de Docker. La technologie Docker prend initialement en charge les programmes à processus unique, basés sur la soumission d'un fichier image Image. Une fois l'image soumise, Docker peut démarrer un ou plusieurs conteneurs via l'image et le processus d'application s'exécute dans le conteneur.
Par rapport aux technologies de virtualisation traditionnelles (telles que VMWare, Virtual Box), Docker utilise l'isolation au niveau des processus, c'est-à-dire que plusieurs conteneurs sur le même hôte peuvent partager le même ensemble de noyaux de système d'exploitation. Cela permet d'économiser beaucoup de ressources et d'obtenir facilement des fonctionnalités telles qu'un déploiement rapide, un démarrage rapide, une migration rapide et une gestion des versions.
En fait, la technologie Docker a amélioré et amélioré la technologie LXC d'origine et l'a encapsulée dans un moteur de conteneur plus léger et plus puissant. De ce point de vue, Docker n'est pas une technologie de conteneur native, mais une encapsulation et une amélioration de conteneurs, donc certains disent que Docker n'est pas un « conteneur ».
De plus, il y a aussi un problème à considérer du niveau philosophique de Docker qui n'atteint pas vraiment le "conteneur". " Gérer tous les aspects de l'installation, de la configuration, du fonctionnement et de la suppression. Dans Docker, la création d'images, la mise à jour et le contrôle de version sont toujours gérés par les développeurs eux-mêmes. Cela signifie que Docker n'a pas complètement développé un mécanisme unifié pour gérer les conteneurs et les images, ce qui nécessite un travail plus ou moins manuel.
De plus, Docker encapsule trop la technologie des conteneurs sous-jacente, la rendant trop complexe et facilement déroutante pour les débutants. Et il contient trop d’embûches et de limites, ce qui complique la conteneurisation, une méthode qui à l’origine simplifiait le processus.
De ce point de vue, notamment au niveau de la mise en œuvre de l'ingénierie, Docker ne peut pas être classé comme un « conteneur » car il doit encore être amélioré mécaniquement.
Puisque la réponse aux deux points ci-dessus est « non », quelles sont la nature et les caractéristiques du système Docker ? Il ne fait aucun doute que Docker est une solution de déploiement et de gestion d’environnements d’applications, étroitement liée à la technologie des conteneurs. Les avantages de Docker résident dans son excellente simplicité opérationnelle, son mécanisme de bac à sable efficace, ses méthodes pratiques de création et de partage d'images et sa commodité de déploiement de conteneurs. Ce que Docker apporte aux gens, c'est une méthode de déploiement plus scientifique, plus rapide et plus pratique. Par conséquent, Docker peut être considéré comme une solution d’environnement d’application plutôt que comme une matière sèche « conteneur ».
Résumé
Cet article explique pourquoi certaines personnes disent que Docker n'est pas un « conteneur » sous deux aspects : les principes techniques de mise en œuvre de Docker et les aspects philosophiques. En fait, Docker est défini comme une solution de déploiement et de gestion de l'environnement d'applications. Cela ne signifie pas que Docker remplace ou n'exige pas la technologie des conteneurs, mais cela montre que la technologie Docker est basée sur l'amélioration de la technologie des conteneurs et réalise mieux la valeur de la technologie des conteneurs. Bien que la nature et les caractéristiques de Docker ne soient pas des conteneurs, les changements apportés par Docker constituent un pas en avant majeur dans la gestion de l'environnement des applications, apportant une grande commodité et flexibilité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!