overlayfs
Le système de fichiers à union du noyau Linux, qui empile les couches d'une image de conteneur en un seul système de fichiers cohérent, coiffé d'une fine couche inscriptible. C'est lui qui permet à de nombreux conteneurs de partager les mêmes couches d'image immuables sans les copier.
Mécanique : overlayfs fusionne un « lower » (les couches d'image immuables et partagées, en lecture seule) et un « upper » (la couche inscriptible propre au conteneur) en une vue « merged ». Quand le conteneur lit un fichier, celui-ci provient des couches ; quand il y ÉCRIT, un copy-on-write se produit — le fichier est copié vers la couche inscriptible et modifié là, la couche d'origine n'étant jamais touchée. Bénéfice : dix conteneurs issus de la même image se partagent les couches sur disque (une seule copie) et ne portent que leurs propres différences ; le démarrage est rapide (rien n'est copié tant que rien n'est écrit). C'est ce qui explique que les conteneurs soient si économes en espace et en temps de démarrage comparés à des images de VM complètes. Quand le conteneur meurt, la couche inscriptible est jetée (d'où le caractère éphémère des systèmes de fichiers de conteneur). C'est la base de la façon dont les images de conteneur se matérialisent à l'exécution. Voir aussi couche d'image et Container Runtime Interface.