More

    Comment installer MongoDB avec Docker

    Installer MongoDB avec Docker sur Linux

    Pour installer MongoDB avec Docker sur Linux, procédez comme suit :

    1. Ouvrez un terminal et connectez-vous en tant que root ou utilisateur disposant des droits sudo.
    2. Exécutez la commande suivante pour créer un nouveau répertoire dans /data/db qui sera utilisé comme volume pour stocker les données MongoDB :
    sudo mkdir -p /data/db
    1. Exécutez la commande suivante pour lancer un conteneur MongoDB nommé mongo en utilisant une image mongo de Docker Hub:.
    sudo docker run --name mongo -v /data/db:/data/db -d mongo

    Cette commande effectue les mêmes opérations que celles décrites dans la section précédente pour Windows.

    1. Attendez quelques instants que le conteneur ait fini de se créer et de fonctionner. Vous pouvez vérifier l’état du conteneur en exécutant la commande suivante :
    sudo docker ps

    Cette commande affichera une liste des conteneurs en cours d’exécution sur votre machine. Vous devriez voir une sortie comme celle-ci :

    CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS       NAMES
    5f0b9c8a9f0a   mongo     "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes   27017/tcp   mongo
    

    Cette sortie indique que le conteneur Mongo s’exécute avec une image mongo et le port 27017 (port par défaut de MongoDB).

    1. Félicitations, vous avez réussi à installer MongoDB avec Docker sur Linux ! Vous pouvez maintenant vous connecter à votre base de données MongoDB en utilisant les outils que vous aimez, tels que MongoDB Shell, MongoDB Compass, ou les pilotes MongoDB pour votre langage de programmation préféré.

    Conseils et astuces

    Voici quelques conseils et astuces qui peuvent vous aider à optimiser votre utilisation de MongoDB avec Docker :

    • Si vous souhaitez arrêter le conteneur MongoDB, vous pouvez exécuter la commande suivante :
    docker stop mongo
    • Si vous souhaitez supprimer un conteneur MongoDB, vous pouvez exécuter la commande suivante :
    docker rm mongo
    • Si vous souhaitez supprimer une image MongoDB, vous pouvez exécuter la commande suivante :
    docker rmi mongo
    • Si vous souhaitez spécifier la version spécifique de MongoDB que vous voulez utiliser, vous pouvez ajouter une balise de version après le nom de l’image. Par exemple, si vous souhaitez utiliser la version 5.0 de MongoDB, vous pouvez exécuter la commande suivante :
    docker run --name mongo -v /data/db:/data/db -d mongo:5.0
    • Si vous souhaitez exposer le port du conteneur à un port hôte différent, utilisez l’option p. Par exemple, si vous souhaitez exposer le port 27017 d’un conteneur au port 3000 de l’hôte, vous pouvez exécuter la commande suivante :
    docker run --name mongo -v /data/db:/data/db -p 30000:27017 -d mongo
    • Si vous souhaitez exécuter plusieurs instances de MongoDB sur la même machine, vous devez fournir des noms différents pour chaque conteneur et exposer des ports différents pour chaque conteneur. Par exemple, si vous souhaitez exécuter deux instances MongoDB nommées mongo1 et mongo2, et exposer les ports 27017 et 27018 de l’hôte, respectivement, vous pouvez exécuter les commandes suivantes:.
    docker run --name mongo1 -v /data/db1:/data/db -p 27017:27017 -d mongo
    docker run --name mongo2 -v /data/db2:/data/db -p 27018:27017 -d mongo
    ```
    version: "3"
    services:
      mongo:
        image: mongo
        volumes:
          - /data/db:/data/db
        ports:
          - 27017:27017
    ```
    • Si vous souhaitez connecter MongoDB à d’autres applications exécutées dans des conteneurs Docker, vous pouvez utiliser le réseau interne de Docker pour permettre la communication entre les conteneurs. Par exemple, si vous souhaitez connecter MongoDB à une application Node.js s’exécutant dans un conteneur d’application, vous pouvez créer un fichier docker-compose.yml avec un contenu comme celui-ci :
    version: "3"
    services:
      mongo:
        image: mongo
        volumes:
          - /data/db:/data/db
        networks:
          - app-network
      app:
        image: node
        volumes:
          - /app:/app
        ports:
          - 3000:3000
        networks:
          - app-network
    networks:
      app-network:
    • Si vous souhaitez configurer MongoDB de manière plus détaillée, utilisez un fichier de configuration personnalisé contenant les options souhaitées. Par exemple, si vous souhaitez activer l’authentification et le cryptage pour MongoDB, vous pouvez créer un fichier mongod.conf avec un contenu comme celui-ci :
    systemLog:
      destination: file
      path: "/var/log/mongodb/mongod.log"
      logAppend: true
    storage:
      dbPath: "/data/db"
      journal:
        enabled: true
    net:
      port: 27017
      bindIp: 0.0.0.0
      tls:
        mode: requireTLS
        certificateKeyFile: "/etc/ssl/mongodb.pem"
    security:
      authorization: enabled
    • Si vous souhaitez utiliser ce fichier de configuration, vous devez le copier dans un répertoire auquel le conteneur MongoDB peut accéder et fournir le chemin de ce fichier comme argument lors de l’exécution du conteneur. Par exemple, si vous copiez le fichier mongod.conf dans le répertoire /etc/mongo sur l’hôte, vous pouvez exécuter la commande suivante :
    docker run --name mongo -v /etc/mongo:/etc/mongo -v /data/db:/data/db -d mongo --config /etc/mongo/mongod.conf

    Dernières articles