Comment Docker est devenu mon sauveur pour installer Apache Cassandra

Comment Docker est devenu mon sauveur pour installer Apache Cassandra

Lors d’un projet en classe sur les bases de données non relationnelles, j’étais confronté à un défi : installer Apache Cassandra sur mon système Windows 10. Initialement, cela semblait être une tâche relativement simple, mais rapidement, ce qui devait être une procédure standard est devenu un cauchemar de dépendances manquantes et de configurations impossibles. Alors que la frustration montait et que les délais se rapprochaient, une solution s’est imposée : Docker.

Cet article raconte comment Docker m’a sauvé dans cette situation et pourquoi c’est une alternative puissante pour contourner les complications liées aux installations directes.

Le défi : Installer Cassandra sur Windows 10

Pour notre projet, nous avions besoin de travailler avec Apache Cassandra, une base de données distribuée reconnue pour sa scalabilité et sa résilience. En suivant la documentation officielle pour Windows, je me suis rapidement retrouvé face à un mur :

  1. Problèmes de dépendances : Cassandra nécessitait une version spécifique de Java.

    Cependant, même après avoir installé la version demandée, il y avait toujours des problèmes.

  2. Configuration manuelle complexe : Les fichiers de configuration (comme cassandra.yaml) nécessitaient des ajustements spécifiques pour fonctionner sur Windows.

  3. Erreurs incompatibles : Certaines bibliothèques tierces n’étaient pas optimisées pour l’environnement Windows, ce qui entraînait des erreurs fréquentes.

  4. Temps perdu : Après plusieurs heures de recherches et d'essais, j’étais plus près de l’épuisement que de la solution.

La solution : Docker

À ce stade, je savais qu’il fallait un changement de stratégie. C’est là que l’idée m’a traversé d’opter pour une installation via Docker, un outil dont j’avais entendu parler mais que je n’avais jamais utilisé. Docker permet d'exécuter des applications dans des conteneurs isolés, sans avoir à gérer directement les dépendances et les conflits d'environnement. Curieux, j’ai décidé de l’essayer.

Étapes pour installer Cassandra avec Docker

  1. Installer Docker Desktop
    Je me suis d'abord assuré que Docker était installé et fonctionnait sur mon système. L’installation de Docker Desktop sur Windows 10 est un jeu d’enfant et bien documentée. En quelques minutes, Docker était prêt à être utilisé.

  2. Tirer l'image officielle de Cassandra
    Grâce au Docker Hub, il suffit d’une simple commande pour obtenir une version préconfigurée de Cassandra :

     docker pull cassandra
    
  3. Lancer un conteneur Cassandra
    Une fois l’image téléchargée, j’ai démarré un conteneur Cassandra avec la commande suivante :

     docker run --name my-cassandra -d cassandra
    

    En moins de deux minutes, Cassandra était opérationnel dans un environnement isolé, sans aucun problème de dépendances ou de configuration.

  4. Connexion au conteneur
    Pour interagir avec Cassandra, j’ai utilisé l’outil cqlsh :

     docker exec -it my-cassandra cqlsh
    

    Cela m’a permis de tester les requêtes et d'explorer le fonctionnement de Cassandra, exactement comme je le voulais pour le projet.

Les avantages de Docker dans ce contexte

  1. Pas de dépendances manquantes
    Docker encapsule toutes les dépendances nécessaires dans l’image. Plus besoin de configurer Java ou de résoudre des conflits entre bibliothèques.

  2. Configuration minimale
    Tout est déjà configuré pour fonctionner dès la sortie de l’image. Pas besoin de plonger dans des fichiers .yaml compliqués.

  3. Portabilité
    Le conteneur Cassandra peut être partagé avec d’autres membres de l’équipe. Une simple commande docker pull leur permet d’avoir exactement le même environnement que moi.

  4. Flexibilité
    Si quelque chose ne fonctionne pas, je peux facilement détruire le conteneur et en créer un nouveau en quelques secondes.

  5. Gain de temps énorme
    Ce qui m’a pris des heures avec l’installation directe (qui a échouée :/) a été résolu en 15 minutes à tout casser avec Docker.

Docker, une solution magique pour les développeurs

Ce projet m’a appris bien plus que les bases de données non relationnelles : il m’a initié à la puissance de Docker. Non seulement cela m’a permis de surmonter un défi technique important, mais cela a également changé ma façon d’aborder les problèmes liés aux installations logicielles. Aujourd’hui, Docker est devenu un outil incontournable dans ma boîte à outils.

Si vous êtes confronté à des problèmes d’installation avec des logiciels complexes (surtout sur Windows), je vous recommande fortement de considérer Docker. C’est une solution moderne et puissante qui vous fera gagner un temps précieux et beaucoup de frustration.