Introduction aux containers Linux

Spécialité(s)


Résumé

Les containers n’existent pas. Enfin, pas en tant que tel. Cet article présente les briques de base des containers Linux que sont les namespaces et les cgroups à travers des exemples concrets. Les lecteurs assidus repartiront avec un module PAM sur mesure pour sandboxer un utilisateur SSH.


Qui ne connaît pas Docker ? Vous avez de la chance : vous abordez cet article libre de tout a priori sur ce qu’est – ou pas – un container.

Dans le noyau Linux, les containers n’existent pas. Un « grep » dans le code source du noyau pourra vous en convaincre. Il y a bien eu une tentative en mai dernier d’ajouter une telle notion pour un besoin spécifique qui sort du cadre de cet article, mais elle n’a pas rencontré d’enthousiasme.

Si les containers en eux-mêmes n’existent pas dans le noyau Linux, celui-ci en fournit du moins les briques élémentaires, les plus significatives étant les cgroups et les namespaces qui feront l’objet de cet article. Il y en a d’autres, elles feront l’objet d’un autre article de ce dossier.

1. Que sont les containers ?

J’aime parler des cgroups et des namespaces comme des étiquettes que l’on attache à des processus. Comme toutes les « étiquettes » des processus, elles peuvent être consultées via le

Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous