vernemq 是一款开源的mqtt broker, 支持cluster 模式部署,而且部署比较简单
以下是一个使用docker-compose 搭建环境的demo

环境准备

  • docker-compose 文件
 
version: "3"
services:
  init:
    image: erlio/docker-vernemq
    environment:
    - "DOCKER_VERNEMQ_ALLOW_ANONYMOUS=on"
    ports:
    - "1883:1883"
    - "8080:8080"
    - "8888:8888"
    networks:
      app_net:
        ipv4_address: 172.16.238.10
  first:
    image: erlio/docker-vernemq
    environment:
    - "DOCKER_VERNEMQ_ALLOW_ANONYMOUS=on"
    - "DOCKER_VERNEMQ_DISCOVERY_NODE=172.16.238.10"
    networks:
      app_net:
        ipv4_address: 172.16.238.11
  second:
    image: erlio/docker-vernemq
    environment:
    - "DOCKER_VERNEMQ_ALLOW_ANONYMOUS=on"
    - "DOCKER_VERNEMQ_DISCOVERY_NODE=172.16.238.10"
    networks:
      app_net:
        ipv4_address: 172.16.238.12
  third:
    image: erlio/docker-vernemq
    environment:
    - "DOCKER_VERNEMQ_ALLOW_ANONYMOUS=on"
    - "DOCKER_VERNEMQ_DISCOVERY_NODE=172.16.238.10"
    networks:
      app_net:
        ipv4_address: 172.16.238.13
networks:
  app_net:
    driver: bridge
    ipam:
      driver: default
      config:
      -
        subnet: 172.16.238.0/24
 
 
  • 说明
    为了简单,使用了固定的ip,因为集群的节点发现需要使用ip 地址

启动&&测试

  • 启动
 
docker-compose up -d
  • 测试
    登陆节点使用vmq-admin 工具查看集群信息就可以了
    比如:进入容器 docker exec -it vermq-clutser-project_first_1 sh
 
 vmq-admin cluster show
+---------------------+-------+
| Node |Running|
+---------------------+-------+
|VerneMQ@172.16.238.10| true |
|VerneMQ@172.16.238.11| true |
|VerneMQ@172.16.238.12| true |
|VerneMQ@172.16.238.13| true |
 

说明

这个只是简单的环境搭建,vernemq 的功能还是很强大的,还需要 在仔细研究

参考资料

https://github.com/rongfengliang/vernemq-clutser-docker-compose
https://docs.vernemq.com/installing-vernemq/docker

vernemq 集群 docker-compose 搭建简单试用的更多相关文章

  1. Docker Compose 搭建 Redis Cluster 集群环境

    在前文<Docker 搭建 Redis Cluster 集群环境>中我已经教过大家如何搭建了,本文使用 Docker Compose 再带大家搭建一遍,其目的主要是为了让大家感受 Dock ...

  2. Docker 0x13: Docker 构建集群/服务/Compose/分布式服务栈

    目录 Docker 构建集群/服务/Compose/分布式服务栈 集群 初始化集群服务 安装docker-machine 管理节点和工作节点 docker集群构建完成 集群中部署应用 集群服务访问特性 ...

  3. redis单点、redis主从、redis哨兵sentinel,redis集群cluster配置搭建与使用

    目录 redis单点.redis主从.redis哨兵 sentinel,redis集群cluster配置搭建与使用 1 .redis 安装及配置 1.1 redis 单点 1.1.2 在命令窗口操作r ...

  4. FastDfs集群docker化部署

    初识分布式文件系统FastDFS- 1.分布式与集群的区别 区别:集群是个物理形态,分布式是个工作方式.只要是一堆机器,就可以叫集群,他们是不是一起协作着干活,这个谁也不知道:一个程序或系统,只要运行 ...

  5. .net core结合Consul集群&Docker实现服务治理

    实战中的asp.net core结合Consul集群&Docker实现服务治理 https://www.cnblogs.com/guolianyu/p/9614050.html 0.目录 整体 ...

  6. 大数据系列(1)——Hadoop集群坏境搭建配置

    前言 关于时下最热的技术潮流,无疑大数据是首当其中最热的一个技术点,关于大数据的概念和方法论铺天盖地的到处宣扬,但其实很多公司或者技术人员也不能详细的讲解其真正的含义或者就没找到能被落地实施的可行性方 ...

  7. hadoop集群环境的搭建

    hadoop集群环境的搭建 今天终于把hadoop集群环境给搭建起来了,能够运行单词统计的示例程序了. 集群信息如下: 主机名 Hadoop角色 Hadoop jps命令结果 Hadoop用户 Had ...

  8. MySQL集群PXC的搭建

    MySQL集群PXC的搭建 最近公司某客户要求我们的数据库搭建PXC集群以保证他们的系统高性能和搞稳定性 以后花费了一些时间去搭建和测试,也踩过一些坑,准备分享出来 系统:centos6.6PXC:5 ...

  9. Istio入门实战与架构原理——使用Docker Compose搭建Service Mesh

    本文将介绍如何使用Docker Compose搭建Istio.Istio号称支持多种平台(不仅仅Kubernetes).然而,官网上非基于Kubernetes的教程仿佛不是亲儿子,写得非常随便,不仅缺 ...

  10. Elastic Stack之ElasticSearch分布式集群yum方式搭建

    Elastic Stack之ElasticSearch分布式集群yum方式搭建 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.搜索引擎及Lucene基本概念 1>.什么 ...

随机推荐

  1. set循环遍历删除特定元素

    使用Iterator迭代器 public class Demo { public static void main(String[] args) { Set<Object> obj = n ...

  2. [leetcode53]最长子数组 Maximum Subarray Kadane's算法

    [题目] Given an integer array nums, find the contiguous subarray (containing at least one number) whic ...

  3. bootstrap-select 下拉多选组件

    <div class="form-group"> <label class="col-lg-2 col-sm-2 control-label" ...

  4. ACM-ICPC 2018 徐州赛区网络预赛 G. Trace

    There's a beach in the first quadrant. And from time to time, there are sea waves. A wave ( xx , yy  ...

  5. 杭电多校第三场 A Ascending Rating

    Problem Description Before the start of contest, there are n ICPC contestants waiting in a long queu ...

  6. ChinaCock界面控件介绍-TCCImageViewerForm

    有多个图片,左右滑动可以切换,通过手势还可以放大.缩小查看,象常见的相册,就是这样子实现效果. 现在,我们有了TCCImageViewerForm组件,也可以轻松实现这样的场景应用. 现在看看TCCI ...

  7. web.config 冲突的解决办法 (主目录子目录分别帮定域名导至出现错误)

    IIS上在主站点下搭建虚拟目录后,子站点中的<system.web>节点与主站点的<system.web>冲突解决方法: 在主站点的<system.web>上一级添 ...

  8. 由于php环境时间与北京时间相差7个小时

    故在设置当前时间时候需要加上 date_default_timezone_set('prc'); 或者 在php.ini里面设置date.timezone=prc

  9. pycharm 利用virtualenv为每个项目配置venv

    1.在某个位置安装一个虚拟环境 2.项目运行是配置virtualenv生成的环境 3.重启terminal 安装依赖: exp => pip install django

  10. ecmall 基础类分析

    class ECBaseApp,继承自class BaseApp,是includes/ecapp.base.php文件. 该类是一个非常重要的类,他是各个APP的应用的基础继承类.处理相关的基础应用. ...