Comment connecter l’interface graphique de Compass à une base de données MongoDB déployée par Docker

The MongoDB logo on a phone in front of their website.

MongoDB est une base de données No SQL largement utilisée qui peut bien fonctionner dans des conteneurs si vous savez comment la configurer. Apprenez à connecter l’interface graphique Compass ici.

Image : Timon/Adobe Stock

MongoDB est l’une des bases de données NoSQL open source les plus utilisées sur le marché. Il offre toutes les fonctionnalités dont vous avez besoin pour gérer et gérer d’énormes quantités de données et propose même une application de bureau officielle qui facilite un peu la gestion de ces bases de données.

VOIR: Kit de recrutement : Ingénieur base de données (Tech Republic Premium)

Vous pourriez penser que connecter l’application GUI à une instance de MongoDB déployée par Docker serait assez difficile, mais ce n’est pas aussi difficile qu’il n’y paraît. Dans ce didacticiel, je vais vous montrer comment déployer le conteneur MongoDB, puis vous y connecter à partir de MongoDB Compass.

Sauter à:

Ce dont vous aurez besoin pour connecter MongoDB Compass à une base de données conteneurisée

Pour que cette connexion fonctionne, vous aurez besoin d’une instance en cours d’exécution d’un système d’exploitation prenant en charge à la fois Docker et l’application MongoDB Compass. Je vais faire une démonstration avec Ubuntu Linux et vous montrer comment installer Docker, déployer le conteneur, puis connecter Compass à une base de données. Veuillez noter que ce processus est compatible avec une variété de distributions Linux.

Si vous êtes plus intéressé par les instructions générales d’installation de MongoDB GUI Compass et de sa connexion à un serveur distant, ce didacticiel peut être un meilleur point de départ.

Connexion à MongoDB hébergé via Docker

La première chose à faire lors de la connexion à MongoDB via cette méthode est d’installer Docker. Vous pouvez ajouter la clé Docker GPG officielle avec cette commande :

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Ensuite, vous allez ajouter le dépôt Docker :

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

À partir de là, il est temps d’installer les dépendances nécessaires avec cette commande :

sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y

Afin d’installer la dernière version du moteur Docker, vous pouvez utiliser les deux commandes suivantes :

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io -y

Maintenant, ajoutez votre utilisateur au groupe Docker avec ce qui suit :

sudo usermod -aG docker $USER

Déconnectez-vous et reconnectez-vous pour que les modifications prennent effet.

Déploiement et configuration du conteneur MongoDB

Nous pouvons maintenant déployer le conteneur MongoDB avec les éléments suivants :

docker run -d -p 27017:27017 --name example-mongo mongo:latest

Lorsque le conteneur est en cours d’exécution, vous devez y accéder avec cette commande :

docker exec -it example-mongo bash

Une fois à l’intérieur du conteneur, nous devons éditer le fichier de configuration MongoDB avec cette commande :

sudo nano /etc/mongod.conf.orig

Dans ce fichier, recherchez la section suivante :

net:

  port: 27017

  bindIp: 127.0.0.1  

Remplacez cette section par la suivante :

net:

  port: 27017
  bindIp: 0.0.0.0

Une fois que vous avez effectué ces modifications, enregistrez et fermez le fichier. Sortir du conteneur avec le exit commande.

À partir de là, redémarrez le conteneur avec :

docker restart ID

Dans cette commande, ID est l’ID du conteneur Mongo. Si vous n’êtes pas sûr de l’ID, vous pouvez le trouver avec :

docker ps

Remarque : Vous devrez peut-être déployer le conteneur MongoDB avec des variables d’environnement pour le nom d’utilisateur et le mot de passe, ce qui peut être fait comme suit :

docker run -d –name some-mongo -e MONGO_INITDB_ROOT_USERNAME=NAME -e MONGO_INITDB_ROOT_PASSWORD=SECRET mongo

NAME est un nom d’utilisateur et SECRET est un mot de passe unique et fort.

Connexion à la boussole

Avec le conteneur MongoDB en cours d’exécution, vous pouvez maintenant vous y connecter avec Compass en utilisant la même commande de connexion que vous utiliseriez si MongoDB était installé via le gestionnaire de packages traditionnel et les informations d’identification de l’utilisateur que vous avez utilisées avec les variables d’environnement.

Si vous ne parvenez toujours pas à vous connecter à la version conteneurisée de MongoDB à partir d’une instance distante de Compass, vous devrez peut-être installer Compass sur la même machine exécutant le conteneur MongoDB.

Prochaines étapes

Félicitations, vous disposez maintenant d’une interface graphique bien conçue pour faciliter un peu vos tâches d’administration MongoDB. Vous pouvez vous connecter à autant de serveurs MongoDB que nécessaire depuis Compass et commencer à créer et à gérer toutes les collections MongoDB dont vous avez besoin.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *