1. 程式人生 > >vernemq 叢集 docker-compose 搭建簡單試用

vernemq 叢集 docker-compose 搭建簡單試用

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"
    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