Sommaire

Gestion de la Persistancepersistance

Une question importante se pose dès qu’on aborde des solutions en production avec des conteneurs Docker nécessitant une persistance disque, par exemple lorsque l’image embarque une base de données.

Dans une implémentation naïve, l’arrêt du conteneur entraîne la disparition des données (en fait, Docker les garde sur le disque dur, justement pour des raisons de sécurité des données, même si elles ne sont pas aisément visibles). Comme cela a été démontré dans le précédent livre sur Docker du même auteur aux Éditions ENI, ce problème est traité par Docker avec l’utilisation des volumes. La gestion de volumes permet de faire pointer un emplacement du système de fichiers du conteneur sur un emplacement du système de fichiers local. Ainsi, les modifications de contenus de fichiers ne sont pas réalisées dans une couche en écriture qui est potentiellement perdue, mais directement sur un vrai système de fichiers. La gestion (sauvegarde, extension de capacité, maintenance du hardware associée, etc.) est alors exactement la même que pour une application hors Docker.

La technologie des volumes Docker n’est pas détaillée ici, vu que ses changements depuis le premier livre sont marginaux.

Il existe toutefois une autre façon de gérer les modifications de fichiers, à savoir de ...