docker-compose build instance de conteneur mongodb

    docker-compose peut ouvrir plusieurs instances de docker à la fois, ce qui est beaucoup plus pratique que Dockerfile pour créer des conteneurs de docker. Le point principal de docker-compose est la configuration des fichiers yml. La configuration du fichier yml doit faire attention à contrôler strictement l'indentation.

    Il convient de noter que la commande docker-compose n'est pas installée avec l'installation de docker. Il a besoin d'une installation supplémentaire. Si elle n'est pas installée, vous pouvez télécharger la version du système correspondante sur github: https://github.com/docker/compose / . S'il s'agit d'un système Linux, après le téléchargement et la décompression, placez la commande exécutable docker-compose dans le répertoire / usr / bin et donnez l'attribut exécutable: chmod + x / usr / bin / docker-compose

    La construction du conteneur mongodb est en fait très simple, c'est-à-dire que vous devez spécifier la source de l'image. Si vous devez activer l'authentification, vous devez configurer les variables d'environnement MONGO_INITDB_ROOT_USERNAME et MONGO_INITDB_ROOT_PASSWORD. Généralement, nous voulons mapper en externe les disques de l'image, de sorte que même si le conteneur se ferme, les données conservées dans le conteneur ne seront pas perdues au prochain démarrage.

    La configuration docker-compose de mongodb est donnée ci-dessous.

    docker-compose-mongodb.yml

version: '3'
services:
  mongodb:
    image: mongo:latest
    restart: always
    volumes:
      - /data/mongo/db:/data/db
      - /data/mongo/log:/var/log/mongodb
    ports:
      - 27018:27017
    environment:
      MONGO_INITDB_ROOT_USERNAME: admin
      MONGO_INITDB_ROOT_PASSWORD: admin

    Le mappage de port donné ici mappe 27017 dans le conteneur à 27018, car mongodb est installé localement, afin d'éviter les conflits d'occupation du port, il est utilisé 27018. 

    Pour démarrer le conteneur, nous devons préparer les dossiers / data / mongo / db et / data / mongo / log.

    Dans le répertoire où se trouve le fichier de configuration, nous pouvons exécuter la commande pour démarrer le conteneur.

    # docker-compose -f docker-compose-mongodb.yml up -d

    Si mongo: latest n'existe pas dans la liste des miroirs locaux, il sera extrait de l'entrepôt distant, ce qui prendra un certain temps.

    Pour un tel démarrage, nous utilisons l'utilisateur administrateur et le mot de passe administrateur comme utilisateur et mot de passe d'authentification initial par défaut. Généralement en cours d'utilisation, nous allons créer un utilisateur, mais l'utilisateur doit noter que nous devons basculer vers la base de données admin sous utiliser admin, puis authentifier db.auth ("admin", "admin"), et retourner 1, indiquant que l'authentification a réussi . Ensuite, nous devons créer un utilisateur pour une base de données à utiliser. À ce stade, nous devons également basculer vers une autre base de données, telle que mec, et la commande switch est utiliser mec. À ce stade, nous créons l'utilisateur hadoop et spécifions le mot de passe via la commande db.createUser ({user: 'hadoop', pwd: '123456', rôles: [{role: 'dbOwner', db: 'mec'}]}).

    Lors de la création d'un nouvel utilisateur ci-dessus, vous devez faire attention à passer à la base de données gérée par l'utilisateur. Sinon, lorsque nous l'utilisons, une erreur peut être signalée et la valeur par défaut est de ne pas basculer. L'utilisateur que nous avons créé est la base de données d'administration gérée.

 

Publié 529 articles originaux · loué 287 · 1,47 million de vues

Je suppose que tu aimes

Origine blog.csdn.net/feinifi/article/details/105098829
conseillé
Classement