Je suis en train d'apprendre les notions de base sur les conteneurs (Docker dans ce cas). Aussi loin que je apprendre à partir du menu fixe doc et plusieurs lectures, Docker fondamentalement fournit une isolation par l'exécution du conteneur à l'aide de runc (précédemment à l'aide d' un conteneur LXC). Soit façons, il utilise le même noyau que la machine hôte. Ainsi, le conteneur de l'image doit être compatible avec le noyau de l'hôte. Je trouve cela très semblable à ce que l' chroot n'. Quelqu'un pourrait m'expliquer les différences et/ou des avantages sur l'utilisation de Docker plutôt que de chroot? (en outre, les compléments apportés par le Panneau que l'emballage, le docker hub, et toutes les fonctionnalités fournies par Docker)
Réponse
Trop de publicités?Docker permet d'isoler un processus à plusieurs niveaux, à travers les espaces de noms:
- mnt espace de noms fournit un système de fichiers racine (celui-ci peut être comparé à chroot je suppose)
- pid espace de noms de sorte que le processus ne voit que lui-même et ses enfants
- espace de noms réseau qui permet au conteneur de disposer de son propre réseau de pile
- l'utilisateur de l'espace de noms (tout nouveau) qui permet à un non racine de l'utilisateur sur un ordinateur hôte pour être mappé avec l'utilisateur root à l'intérieur du conteneur
- ut fournit un nom d'hôte
- cib offre dédiée de mémoire partagée
Tout cela ajoute plus de l'isolement que de chroot fournit