Aller au contenu

GUIDE TECHNIQUE · DOCKER

Gérer les volumes et diagnostiquer Docker

Comprendre la persistance et diagnostiquer un conteneur Docker à partir d'un Redis local : volume nommé, journaux, statistiques, commandes de vérification et nettoyage non destructif.

Niveau Intermédiaire4 min de lecture— vuesDocker

L’ESSENTIEL EN BREF

Comment procéder ?

Comprendre la persistance et diagnostiquer un conteneur Docker à partir d'un Redis local : volume nommé, journaux, statistiques, commandes de vérification et nettoyage non destructif.

Résultat à atteindre : Volume créé et monté dans /data.

Avant de commencer : Docker accessible et stockage disponible pour un volume nommé de test.

01 · CADRAGE

Ce que vous allez mettre en place

Comprendre la persistance et diagnostiquer un conteneur Docker à partir d'un Redis local : volume nommé, journaux, statistiques, commandes de vérification et nettoyage non destructif.

Pour qui : Équipes RUN, développeurs et administrateurs systèmes

Environnement et versions

Docker Engine, CLI standard et image redis:7-alpine de laboratoire ; vérifier compatibilité/version pour votre infrastructure.

Vérifiez la compatibilité avec votre environnement réel. Les versions ne sont jamais présumées identiques d’un tenant à l’autre.

02 · AVANT DE COMMENCER

Prérequis et points de contrôle

  • Docker accessible et stockage disponible pour un volume nommé de test.
  • Aucun autre conteneur nommé adn-redis-lab ; accès local autorisé.
  • Absence de données réelles ou sensibles dans le laboratoire.

03 · VUE D’ENSEMBLE

Comprendre l’architecture et les flux

ARCHITECTURE TECHNIQUEComprendre la chaîne de bout en bout
01Redis en conteneur
02Volume redis-lab-data
03docker logs
04docker inspect
05Données conservées
Le volume nommé survit au cycle du conteneur lorsqu'il n'est pas supprimé explicitement. Les commandes de diagnostic ne sont pas des sauvegardes.

04 · TUTORIEL

Procédure complète, étape par étape

Chaque étape explique l’action, sa raison, le contrôle attendu et les erreurs habituelles. Adaptez les exemples aux paramètres de votre propre environnement.

01

ÉTAPE 1 / 5

Créer le volume et lancer Redis

Les données écrites seulement dans le système de fichiers éphémère d'un conteneur peuvent disparaître à sa suppression.

  1. Créer un volume Docker nommé.
  2. Démarrer Redis sans exposer son port à l'hôte.
  3. Activer l'append-only file pour conserver les écritures après arrêt propre.
Exemple techniqueÀ adapter à votre environnement
docker volume create adn-redis-lab-data
docker run -d --name adn-redis-lab --mount source=adn-redis-lab-data,target=/data redis:7-alpine redis-server --appendonly yes
Ce qui se passe à cette étape
1Redis en conteneur
2Créer le volume et lancer Redis
3Données conservées

À vérifier : Le conteneur redis fonctionne et monte le volume à /data.

Point de vigilance ADN : La persistance AOF dans cet exercice ne remplace ni réplication ni sauvegarde.

02

ÉTAPE 2 / 5

Écrire et relire une valeur

Un test de persistance exige un jeu de données identifié avant le redémarrage.

  1. Incrémenter une clé fictive dans Redis.
  2. Lire sa valeur.
  3. Inspecter le point de montage pour identifier le volume réellement attaché.
Exemple techniqueÀ adapter à votre environnement
docker exec adn-redis-lab redis-cli INCR adn:test:counter
docker exec adn-redis-lab redis-cli GET adn:test:counter
docker inspect adn-redis-lab --format '{{json .Mounts}}'
Ce qui se passe à cette étape
1Redis en conteneur
2Écrire et relire une valeur
3Données conservées

À vérifier : GET renvoie la valeur créée (par exemple 1 après un premier INCR).

Point de vigilance ADN : Ne pas prendre de capture d'inspection contenant des variables ou mots de passe d'un environnement réel.

03

ÉTAPE 3 / 5

Observer les journaux et les ressources

Les outils de diagnostic distinguent un arrêt, un problème de saturation et une erreur applicative.

  1. Lire les cinquante dernières lignes de log.
  2. Observer CPU et mémoire sans laisser un terminal monopoliser la session.
  3. Examiner les états du conteneur.
Exemple techniqueÀ adapter à votre environnement
docker logs --tail=50 adn-redis-lab
docker stats --no-stream adn-redis-lab
docker inspect adn-redis-lab --format '{{.State.Status}}'
Ce qui se passe à cette étape
1Redis en conteneur
2Observer les journaux et les ressources
3Données conservées

À vérifier : Le conteneur remonte running et les ressources sont visibles.

Point de vigilance ADN : docker logs ne remonte que les sorties stdout/stderr du processus : les fichiers internes demandent un autre collecteur.

04

ÉTAPE 4 / 5

Démontrer le maintien du volume

Supprimer puis recréer un conteneur relié au même volume constitue le test de persistance.

  1. Stopper puis supprimer le conteneur, sans supprimer son volume.
  2. Relancer Redis avec le même montage et les mêmes options.
  3. Relire la clé de test créée avant l'arrêt.
Exemple techniqueÀ adapter à votre environnement
docker stop adn-redis-lab
docker rm adn-redis-lab
docker run -d --name adn-redis-lab --mount source=adn-redis-lab-data,target=/data redis:7-alpine redis-server --appendonly yes
docker exec adn-redis-lab redis-cli GET adn:test:counter
Ce qui se passe à cette étape
1Redis en conteneur
2Démontrer le maintien du volume
3Données conservées

À vérifier : La valeur du compteur est conservée après recréation du conteneur.

Point de vigilance ADN : L'arrêt propre garantit mieux la persistance AOF qu'un kill forcé ; pour le RUN prévoir des sauvegardes.

05

ÉTAPE 5 / 5

Nettoyer sans suppression accidentelle

L'effacement des volumes est une action destructive à dissocier du retrait d'un conteneur.

  1. Arrêter et supprimer le conteneur de test.
  2. Vérifier que le volume nommé existe encore.
  3. Ne supprimer le volume qu'après accord explicite de purge.
Exemple techniqueÀ adapter à votre environnement
docker stop adn-redis-lab
docker rm adn-redis-lab
docker volume inspect adn-redis-lab-data
# Supprimer les données de TEST après validation uniquement :
# docker volume rm adn-redis-lab-data
Ce qui se passe à cette étape
1Redis en conteneur
2Nettoyer sans suppression accidentelle
3Données conservées

À vérifier : Le conteneur a disparu mais le volume existe toujours.

Point de vigilance ADN : docker volume prune peut effacer des volumes inutilisés sans rapport avec cette recette : à éviter en environnement partagé.

SOURCES ET FIABILITÉ

Statut de validation du guide

Rédaction : ADN Consulting. Statut : procédure documentée, exécution en laboratoire non attestée.

Les exemples et versions indiqués doivent être vérifiés sur un environnement autorisé. Aucune validation individuelle par un consultant n’est revendiquée sans preuve.

Documentation officielle de référence

05 · RECETTE

Comment vérifier que tout fonctionne ?

Résultat attenduContrôles avant de considérer la procédure terminée
01

Volume créé et monté dans /data.

02

La clé Redis est lisible avant la suppression du conteneur.

03

La même clé est retrouvée après recréation.

04

Les statistiques et journaux ont été inspectés, sans suppression générale de volumes.

06 · DIAGNOSTIC

Problèmes fréquents et résolution

Valeur perdue après redémarrage

Cause probable : Volume non remonté ou persistance AOF inactive

Que faire : Comparer docker inspect et commande de démarrage des deux conteneurs.

docker logs vide

Cause probable : Application journalise dans un fichier plutôt que stdout

Que faire : Vérifier stratégie de logging de l'image.

Volume impossible à supprimer

Cause probable : Un conteneur y fait toujours référence

Que faire : Lister les conteneurs et inspecter leurs montages.

Le conseil de l’expert ADN

Avant de généraliser cette configuration, validez-la sur un périmètre représentatif, documentez les critères de réussite et conservez une procédure de retour arrière. Une automatisation fiable se juge sur l’état final observé, les permissions maîtrisées et un retour arrière testé.

07 · QUESTIONS PRATIQUES

Questions fréquentes

Le volume fait-il office de sauvegarde ?

Non. Un volume conserve des données sur le même moteur Docker ; un plan de sauvegarde externe reste nécessaire.

Faut-il toujours utiliser prune ?

Non. La suppression automatique est risquée sur un hôte partagé.

AUTRES TECHNOLOGIES

Guides complémentaires

Ce tutoriel s’inscrit dans une chaîne technique plus large. Retrouvez les méthodes associées aux technologies voisines.

Tous les guides Docker

Pour aller plus loin