菜单
菜单
文章目录
  1. MongoDB 集群
    1. 说明
    2. 配置文件
  • docker-compose.yml
    1. 初始化副本集
  • RabbitMQ 集群
    1. 说明
    2. 配置文件
  • docker-compose.yml
  • 验证
  • Docker 部署 MongoDB 和 RabbitMQ 的集群

    备份一下 Docker 上 MongoDB 和 RabbitMQ 集群的简短教程。

    MongoDB 集群

    说明

    使用 Docker 官方的 MongoDB 镜像启动 3 个容器,一个主服务器两个备份服务器。

    配置文件

    docker-compose.yml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    version: '3'  
    services:
    mongo1:
    image: mongo
    container_name: "mongo1"
    ports:
    - "30001:27017"
    volumes:
    - /data/mongodb/mongo1:/data/db
    command: mongod --dbpath /data/db --replSet mongoreplset
    mongo2:
    image: mongo
    container_name: "mongo2"
    ports:
    - "30002:27017"
    volumes:
    - /data/mongodb/mongo2:/data/db
    command: mongod --dbpath /data/db --replSet mongoreplset
    mongo3:
    image: mongo
    container_name: "mongo3"
    ports:
    - "30003:27017"
    volumes:
    - /data/mongodb/mongo3:/data/db
    command: mongod --dbpath /data/db --replSet mongoreplset

    初始化副本集

    1
    2
    3
    4
    5
    6
    docker exec -it mongo1 mongo  

    > rs.initiate() \# 初始化
    > rs.add('mongo2:27017') \# 加入 备份服务器 mongo2
    > rs.add('mongo3:27017') \# 加入 备份服务器 mongo3
    > rs.status() \# 查看状态

    RabbitMQ 集群

    说明

    使用 bijukunjummen 的 RabbitMQ 镜像启动 3 个容器。

    配置文件

    docker-compose.yml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    version: '3'  
    services:
    rabbit1:
    image: bijukunjummen/rabbitmq-server
    hostname: rabbit1
    ports:
    - "5672:5672"
    - "15672:15672"
    environment:
    - RABBITMQ\_DEFAULT\_USER=myuser
    - RABBITMQ\_DEFAULT\_PASS=mypass
    rabbit2:
    image: bijukunjummen/rabbitmq-server
    hostname: rabbit2
    links:
    - rabbit1
    environment:
    - CLUSTERED=true
    - CLUSTER_WITH=rabbit1
    - RAM_NODE=true
    ports:
    - "5673:5672"
    - "15673:15672"

    rabbit3:
    image: bijukunjummen/rabbitmq-server
    hostname: rabbit3
    links:
    - rabbit1
    - rabbit2
    environment:
    - CLUSTERED=true
    - CLUSTER_WITH=rabbit1
    ports:
    - "5674:5672"

    验证

    通过浏览器访问 http://<服务器 IP>:15672,帐号和密码默认都是 guest,即可在 Nodes 看到三个节点。

    支持一下
    扫一扫,支持我
    • 微信扫一扫
    • 支付宝扫一扫