Conteneurs Linux
Un conteneur Linux est un terme générique pour une implémentation d'une forme de virtualisation au niveau du système d'exploitation. Il s'agit en effet d'une manière d'isoler un ou plusieurs processus qui tournent en leur créant un environnent qui sera différent, parfois à l'extrême, des autres processus tournant sur le même système.
Principe
Linux ne contient pas un système d'isolation unique, mais plusieurs mécanismes qui ont évolué au fil des années sont utilisés ensemble pour générer cet effet. Les mécanismes principaux du noyau Linux, sont les espaces de noms (permettant de contrôler la visibilité des ressources) et les groupes de contrôle (cgroups), permettant de limiter la quantité des ressources utilisées.
Le « conteneur » peut ainsi définir un système de fichiers qui sera différent, un nom d'hôte différent, limiter l'accès du processus à la mémoire, lui désigner une partie d'un nombre restreint des processeurs présents sur la machine.
À la différence de la virtualisation classique, une seule copie du système d'exploitation tourne sur la machine, les conteneurs peuvent ainsi réclamer moins de ressources en termes de mémoire.
Exemples
Si d'autres projets ont existé avant lui (comme OpenVZ sorti en 2005 ou LXC en 2008) c'est le projet Docker, sorti en open source le 13 mars 2013 qui a contribué le plus à la démocratisation du concept[1].
Liste alphabétique des plus connus :