[Série MongoDB] 2. Installation Docker Explication détaillée de MongoDB 6.x

Cet article présente principalement le schéma d'installation de MongoDB basé sur la conteneurisation Docker. Avec la technologie de conteneurisation Docker, vous pouvez créer rapidement un service de base de données MongoDB avec seulement quelques lignes de commandes. Voici le processus détaillé pour votre référence.

Docker installe MongoDB

En prenant Centos comme exemple, vous devez d'abord installer l'environnement Docker :

$ yum install docker

Afficher le numéro de version du Docker :

$ docker -v
Docker version 20.10.17, build 100c701

Il peut afficher correctement, indiquant que l'installation du docker est réussie.

télécharger le miroir

Alors venez sur dockerhub pour voir l'image mongo :

image-20221109093038469

Au moment de la rédaction de cet article, la dernière version est la 6.0.2 :

image-20221109093307027

Extrayez l'image de mongo via dockerla commande. Si aucune balise n'est spécifiée, la valeur par défaut est latest, c'est-à-dire6.0.2 :

$ docker pull mongo

Visualisez l'image téléchargée :

$ docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
mongo                 latest    b70536aeb250   13 days ago      695MB

créer un conteneur

C'est très simple à utiliser docker.Démarrez l'image en tant que conteneur pour exécuter un service .

La commande pour démarrer le conteneur est docker run:

$ docker run 

Avant de démarrer le conteneur mongo, arrêtez le service mongod de l'hôte pour éviter les conflits d'occupation du port :

$ mongod --dbpath=/data/mongodb/data  --shutdown

Le répertoire de données doit également être spécifié lors de l'arrêt.

En regardant la documentation de l'image mongo, le moyen le plus simple de démarrer un conteneur mongo est :

$ docker run --name mongo -d -p 27017:27017 mongo

Description du paramètre :

  • --name mongo: Le nom du conteneur créé, personnalisé, a généralement une relation correspondante avec le nom de l'image
  • -d: Démarrez le conteneur en tant que démon
  • -p 2701:27017: Le numéro de port par défaut de MongoDB est 27017. Ce paramètre mappe le port de l'hôte au port du conteneur mongo actuel, afin que le service de base de données du conteneur soit accessible via le réseau.
  • mongo: Quelle image utiliser pour créer le conteneur. L'écriture complète est <image:tag>. Puisqu'aucune balise n'est spécifiée lors du téléchargement de l'image mongo, c'est-à-dire que la balise par défaut est utilisée, il n'est donc pas nécessaire de la spécifier ici.

Grâce à la commande simple ci-dessus, un conteneur mongo est créé et l'ID du conteneur créé sera renvoyé :

image-20221102222133402

Afficher les conteneurs Docker en cours d'exécution :

$ docker ps

Vous pouvez voir l'ID du conteneur, le nom, l'heure de création, le port et d'autres informations :

image-20221102222328363

À ce stade, un conteneur mongo est déjà en cours d'exécution.

Arrêter le conteneur de fonctionner

Utilisez stopla commande, suivie du nom du conteneur et de l'ID du conteneur :

$ docker stop mongo 

$ docker stop 1b5c

Seuls les premiers chiffres de l'ID sont nécessaires pour identifier un conteneur unique. Ainsi, lorsque vous utilisez l'ID, il est généralement abrégé :

image-20221102223521672

Affichez tous les conteneurs avec la commande :

$ docker ps -a

Comme vous pouvez le voir, le conteneur mongo est sorti il ​​y a 58 secondes :

image-20221102223636521

L'hôte accède au service de données dans le conteneur

Un conteneur est une petite machine virtuelle. Maintenant, MongoDB s'exécute à l'intérieur du conteneur. Pour accéder au service de données, vous devez utiliser le client Mongo pour vous connecter. Le client Mongo fait ici référence à un large éventail de clients, tels que MongoDB Shell, Mongoose dans Nodejs et l'outil graphique Robo 3T, etc., appartiennent tous au client MongoDB, tant qu'ils disposent d'informations d'identification, ils peuvent se connecter au client MongoDB. exécuter le service Mongod.

Ci-dessus , nous avons installé MongoDB Shell séparément dans le système Windows et sur le serveur (hôte) pour nous connecter au service MongoDB. En tant qu'outil client, il est accessible indépendamment du fait que le service MongoDB s'exécute localement, dans un conteneur ou sur le réseau .

Étant donné que le service de conteneur créé par défaut n'a pas de nom d'utilisateur et de mot de passe définis, seuls l'adresse et le numéro de port sont nécessaires pour réussir la connexion.

Utilisation de la connexion de l'hôtemongosh :

$ mongosh

Il se connectera par défaut mongodb://127.0.0.1:27017, donc le service mongod se trouve dans le conteneur :

image-20221109232039231

Accès réseau externe au service MongoDB

Port ouvert 27017

Avant d'accéder depuis le réseau externe, vous devez vous connecter à la console du serveur et ouvrir le port 27017 dans le groupe de sécurité :

image-20221109101836591

outils de coque

Pour utiliser le local mongoshpour vous connecter, vous devez spécifier l'adresse IP et le numéro de port de l'hôte distant :

$ mongosh --host 101.200.218.201 --port 27017

Ou peut être raccourci comme suit :

$ mongosh mongodb://101.200.218.201:27017

image-20221109232523931

Outils Robo3T

Robo 3T est un excellent outil client visuel qui prend en charge la base de données MongoDB, cliquez pour accéder au site officiel pour télécharger .

Le processus d'installation est très simple, je ne le démontrerai donc pas davantage.

Après une installation réussie, ouvrez Robo 3T et créez une nouvelle connexion à la base de données :

image-20221109102322351

Dans la fenêtre pop-up sélectionnez create:

image-20221109102628634

NameVous pouvez définir un nom pour cette connexion dans , saisir Addressl'adresse IP et le numéro de port du serveur dans , puis cliquer sur Testle bouton en bas à gauche pour effectuer un test de connectivité. La figure suivante indique une connexion réussie. Cliquez Saveà nouveau sur le bouton pour enregistrer la connexion.

image-20221109103001363

Sélectionnez ensuite cette connexion et cliquez sur Connectle bouton pour vous connecter au service MongoDB exécuté sur le serveur :

image-20221109103211017

image-20221109103233456

Résumer

Cet article présente en détail le processus de téléchargement de l'image mongo via Docker dans le système Linux et de création du conteneur mongo. Il présente également la manière dont la machine hôte accède au service de base de données dans le conteneur, ainsi que la manière d'accéder à distance à la base de données. service sur le serveur localement. Pour l’outil Robo 3T, il est très simple à utiliser et est recommandé.

Que la base de données s'exécute sur la machine hôte ou dans le conteneur, en fait, elles fournissent toutes les mêmes services au monde extérieur : il suffit de se concentrer sur le fonctionnement de la base de données.

À l'heure actuelle, le MongoDB que nous avons installé n'a pas défini de nom d'utilisateur ni de mot de passe, ce qui est très peu sécurisé. Ainsi, avant de commencer réellement à exploiter la base de données, nous présenterons la stratégie de sécurité de MongoDB dans le prochain article.

Je suppose que tu aimes

Origine blog.csdn.net/Old_Soldier/article/details/132523361
conseillé
Classement