Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/11/2019, à 16:12

SoufianTa

Lxc vs docker

Bonjour,

1) Ces 2 services sont assez à la mode ces derniers temps mais quel est la vraie différence (technique)?

J’ai cru comprendre que lxc était la virtualisation d’un OS complet et docker d’un service mais je remarque que ce que l’on peut faire avec l’un, on sait le faire avec l'autre aussi ! Docker est aussi une sur couche à lxc donc si quelqu’un sait m’expliquer la/les vraies différences.

2) Ce que je n’arrive pas à saisir c’est aussi que sur lxc toutes les données y restent alors que docker, les données y sont éphémères (sauf si on joue avec les couches ou bind des répertoires de la machine hôte) mais je n’arrive pas à bien saisir la technique qui consiste à faire en sorte de garder les données dans une couche docker.

Merci.

Dernière modification par SoufianTa (Le 20/11/2019, à 01:39)

Hors ligne

#2 Le 21/11/2019, à 10:48

krodelabestiole

Re : Lxc vs docker

SoufianTa a écrit :

Docker est aussi une sur couche à lxc

ben voilà tu as presque répondu à ta question.

un article qui traite de ça ici : https://www.lemagit.fr/conseil/Conteneu … ifferences

pour reformuler ça autrement : lxc est une techno de virtualisation de relativement bas niveau (au niveau du noyau linux) et si docker en est techniquement une extension, c'est surtout une application (ou un ensemble d'applications) qui permet de gérer des services isolés du système.

en ce sens par rapport à lxc ça se rapproche plus des snaps ou des flatpaks : possibilité de monter ou démonter des apps (ici des services) isolés du reste du système dans la ou même les versions qu'on veut (éventuellement simultanément) parce que chaque service intègre ses dépendances et est par défaut cloisonné.

si il n'y a pas de persistance c'est pas une limitation technique, c'est une volonté conceptuelle : chaque dockerfile est une recette de cuisine universelle et cela permet d'exporter un environnement complexe en quelques fichiers texte maxi, sur n'importe quelle machine / os compatible docker (et donc ça permet des échanges simplifiés, ou même de distribuer des applications voir docker hub).

il y a 2 techniques principales pour persister les données : les bind-mounts (qui permettent de lier un répertoire ou un fichier dans un container à répertoire ou un fichier de l'hôte, et donc de travailler directement sur l'hôte) et les volumes nommés (gérés entièrement par docker).

de la même manière rien n'empêche techniquement d'avoir un système d'exploitation complet dans un container docker. c'est juste une préférence conceptuelle : chaque container correspond à un service qui doit rester montable ou démontable individuellement, sans quoi on a pas trop d'intérêt à utiliser docker.

alors que lxc n'a pas d'avis sur ta manière d'utiliser tes machines virtuelles.

Dernière modification par krodelabestiole (Le 21/11/2019, à 10:49)

Hors ligne

#3 Le 21/11/2019, à 21:30

SoufianTa

Re : Lxc vs docker

Merci pour ta réponse (krodelabestiole).

J’avais saisi la technique du bind-mounts mais moins celle des volumes nommés !

Pourrais-tu en quelques lignes me simplifier le truc ? Il faut donc nommer le conteneur pour créer une nouvelle couche et tout ce qui y sera mit sera conservé en gros?

Hors ligne