Maison >Opération et maintenance >Docker >Un conteneur Docker ne peut-il exécuter qu'une seule application ?
Un conteneur dans Docker peut non seulement exécuter une seule application ; tant que les ressources sont suffisantes, plusieurs applications peuvent être exécutées dans un conteneur. Cependant, l'exécution de plusieurs applications dans un conteneur présente de nombreux inconvénients, ce qui viole l'intention initiale de. le conteneur. Le conteneur doit être léger ; si les applications sont placées ensemble, cela peut entraîner des problèmes avec un processus et rendre tous les processus inaccessibles.
L'environnement d'exploitation de ce tutoriel : système linux7.3, docker version 19.03, ordinateur Dell G3.
Plusieurs applications peuvent être exécutées dans un conteneur tant que vous disposez de suffisamment de ressources, vous pouvez l'exécuter, mais cela va à l'encontre de l'intention initiale du conteneur. être léger et isolé. S'il ne sert à rien de regrouper des applications ensemble
Le déploiement de plusieurs processus dans un seul conteneur présente de nombreux inconvénients. Par exemple, lors de la mise à jour de l'image d'un certain processus, d'autres processus seront forcés de redémarrer. Si un problème survient dans un processus et que le conteneur se bloque, tous les processus seront inaccessibles.
Il n'est pas recommandé d'exécuter plusieurs programmes directement dans un seul conteneur Docker.
En prenant le soutien officiel de Docker à Kubernetes le 18 octobre 2017 comme un calcul décisif, cela fait plus d'un an depuis que Kubernetes a remporté la victoire finale dans la guerre de l'orchestration des conteneurs. Jetons d'abord un coup d'œil au schéma d'architecture Kubernetes classique :
Vous pouvez voir que dans Kubernetes, la plus petite unité de déploiement pour la création, la planification et la gestion est le Pod, pas le conteneur. Dans les scénarios sans technologie de conteneurisation, les conteneurs sous le même pod s'exécutent sur le même hôte physique ou virtuel. Les données et les communications peuvent être facilement partagées entre ces conteneurs, et les conteneurs individuels peuvent être reconstruits et redéployés indépendamment.
Suivez le principe unique, un conteneur n'exécute qu'un seul processus principal.
Plusieurs processus sont déployés dans un conteneur, ce qui présente de nombreux inconvénients. Par exemple, lors de la mise à jour de l'image d'un certain processus, d'autres processus seront forcés de redémarrer. Si un problème survient dans un processus et que le conteneur se bloque, tous les processus seront inaccessibles.
Basé sur les principes prônés par le site officiel.
Conteneur = application + environnement d'exécution dépendant
Plutôt que de déployer un tas de processus ensemble comme une machine virtuelle.
Apprentissage recommandé : "Tutoriel vidéo Docker"
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!