zoukankan      html  css  js  c++  java
  • docker-compose mongodb 副本

    生成keyfile

    //生成keyfile
    openssl rand -base64 756 > mongo-keyfile.jks
    chmod 600 keyfile/keyfile.jks
    
    //如果报error opening file: keyfile/keyfile.jks: bad file
    chown 999 keyfile/keyfile.jks
    

    启动docker

    docker-compose up -d

    version: "3.7"
    services:
      mgomaster:
        image: mongo:4.4.9
        container_name: mgomaster
        restart: always
        environment:
          MONGO_INITDB_ROOT_USERNAME: root
          MONGO_INITDB_ROOT_PASSWORD: xxxx
        command: mongod --auth --keyFile /keyfile/keyfile.jks --bind_ip_all --replSet rs0
        volumes:
          - ./master:/data/db
          - ./keyfile:/keyfile
        ports:
          - "27017:27017"
        networks:
          - default
    
      mgoslaver:
        image: mongo:4.4.9
        container_name: mgoslaver
        restart: always
        environment:
          MONGO_INITDB_ROOT_USERNAME: root
          MONGO_INITDB_ROOT_PASSWORD: xxxx
        command: mongod --auth --keyFile /keyfile/keyfile.jks --bind_ip_all --replSet rs0
        volumes:
          - ./slaver:/data/db
          - ./keyfile:/keyfile
        ports:
          - "27018:27017"
        networks:
          - default
    
    networks:
      default:
        external:
          name: xxx
    

    初始化副本

    docker exec -it mgomaster /bin/bash
    进入 docker 以后, mongo -u <用户名> -p <密码>
    rs 初始化

    rs.initiate(
      {
        _id : 'rs0',
        members: [
          { _id : 0, host : "mgomaster:27017" },
          { _id : 1, host : "mgoslaver:27017" },
        ]
      }
    )
    

    验证状态

    通过 rs.status() 查看状态即可。

  • 相关阅读:
    BZOJ 1014 火星人prefix
    BZOJ 1013 球形空间产生器
    BZOJ 1012 最大数
    BZOJ 1011 遥远的行星
    BZOJ 1010 玩具装箱
    BZOJ 1009 GT考试
    BZOJ 1008 越狱
    BZOJ 1007 水平可见直线
    BZOJ 1006 神奇的国度
    Luogu 1450 [HAOI2008]硬币购物
  • 原文地址:https://www.cnblogs.com/werben/p/15399117.html
Copyright © 2011-2022 走看看