Quelle est la différence entre Docker, LXD et LXC [fermé]


164

Quelle est la différence entre Docker, LXD et LXC. Est-ce qu'ils offrent les mêmes services ou différents.


1
J'ai trouvé celui-ci utile. dernières et meilleures informations. people.canonical.com/~kirkland/…
Ijaz Ahmad Khan

Une très bonne explication sur infoworld.com/article/3204171/linux/… . Il a mentionné que Although Docker started out as an open source project to build specialized LXC, it later morphed into its own container runtime environmentplus sur le lien
Alireza Fattahi

Réponses:


133

Non, LXC, Docker et LXD ne sont pas tout à fait les mêmes. En bref:

LXC

LinuX Containers (LXC) est une méthode de virtualisation au niveau du système d'exploitation permettant d'exécuter plusieurs systèmes Linux isolés (conteneurs) sur un seul hôte de contrôle (hôte LXC).

https://wiki.archlinux.org/index.php/Linux_Containers

niveau faible ...

https://linuxcontainers.org/

Docker

  • par Docker, Inc
  • un système de conteneur utilisant des conteneurs LXC
  • pour que vous puissiez: Build, Ship, and Run Any App, Anywhere http://www.docker.com

LXD

Docker vs LXD

  • Docker est spécialisé dans le déploiement d'applications
  • LXD est spécialisé dans le déploiement de machines virtuelles (Linux)

Infographie de Docker vs LXD

Source: http://linux.softpedia.com/blog/infographic-lxd-machine-containers-from-ubuntu-linux-492602.shtml

À l'origine: https://insights.ubuntu.com/2015/09/23/infographic-lxd-machine-containers-from-ubuntu/

Note technique mineure



12
Docker n'a plus utilisé LXC sous le capot depuis 2014: blog.docker.com/2014/03/…
infomaniac

68

Cette image peut vous aider à comprendre la différence principale entre elles:

lxc x docker

Ce qu'ils ont tous en commun, c'est que toutes ces 3 technologies sont liées aux conteneurs.

Les conteneurs sont un mécanisme de virtualisation léger qui ne vous oblige pas à configurer une machine virtuelle sur une émulation de matériel physique. Sous Linux, ils ont en commun les fonctionnalités du noyau utilisées: cgroups, namespaces(ipc, network, user, pid, mount). Ils tentent également de créer des environnements plus sûrs en créant des conteneurs sans privilèges et en s’intégrant aux fonctions de sécurité, telles que selinux. Ces technologies exportent les API pour mieux s’intégrer aux autres logiciels.

LXD et LXC

Ces deux intègre la même famille où:

  • lxc : interface utilisateur pour les fonctionnalités de confinement du noyau Linux. C'est le gars qui gère les espaces de noms du noyau, les profils Apparmor et SELinux, les Chroots, les capacités du noyau et tous les autres éléments liés au noyau.
  • lxd : est un conteneur "hyperviseur". Il est composé d'un démon (lxd), de l'interface de ligne de commande (lxc) et d'un plugin OpenStack. Ce gars a été développé pour offrir plus de flexibilité et de fonctionnalités à LXC, tout en l’utilisant toujours sous le capot.

Fondamentalement, un espace utilisateur de système d’exploitation autonome est créé avec son infrastructure isolée. lxc est plus directement lié aux fonctionnalités du système d’exploitation pour le réseautage et le stockage que Docker.

Vous créez de nombreuses machines virtuelles comportant des isolations d'espace utilisateur et de noyau, mais ce ne sont pas des machines virtuelles complètes, car elles n'exécutent pas de noyaux séparés, elles ne sont pas non plus paravirtualisées pour la même raison.

Ici, Canonical est le principal sponsor et Oracle investit également des heures supplémentaires dans cette technologie.

Docker

Il a quelques différences, étant le plus gros d'entre eux, le moteur qui encapsule les applications avec un système de fichiers autonome au lieu d'une "image d'espace utilisateur" de base. L'idée est de contenir l'application et l'image de base pour donner l'impression que l'application est un processus unique dans le moteur. Docker a utilisé la technologie lxc comme sous-jacent pour communiquer avec le noyau, mais il utilise aujourd'hui sa propre bibliothèque, libcontainer .

Le système de fichiers est une abstraction de Docker, tandis que lxc utilise directement les fonctionnalités du système de fichiers. Le réseau est aussi une abstraction tandis qu'avec Lxc, vous pouvez configurer plus facilement les adresses IP et les configurations de routage. Certains sites de type "App Store" sont gérés par Microsoft, Amazon, VMware, IBM et d'autres lecteurs.

Docker. INC. Est le sponsor principal ici. VMware investit également dans cette technologie.

Technologie de conteneur associée:

Ce sont d'autres technologies de conteneur que Linux a: OpenVZ et Linux-VServer

Trucs connexes:



Ouais. C’est une nouveauté puisque tout ce que zfs utilise sur Ubuntu est un wada-wada. Et c'est une présentation. Soyez toujours attentifs aux fichiers PDF ou PPT où il existe des mondes tels que "meilleur que celui-ci", "technologie la plus rapide" ou "plus évolutif que Y" ...

5
Je suis devenu assez sceptique quant aux produits issus de Canonical. Ils ont tendance à les annoncer comme ce qu'ils pourraient être au lieu de ce qu'ils sont. Souvent, quand ce "pourrait être" est encore à des années.
Orodbhen

Au lieu d'utiliser minuscule lxc, cela devrait être une référence à liblxc. Et pour autant que l'outillage est concerné, il peut alors se référer à 1.x par 3.x où LXD (juste le démon) est uniquement disponible pour liblxc> = 2.0 et lxcist le programme client LXD qui est le successeur du lxc-*Baptisée Outils LXC 1.x.
0xC0000022L
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.