亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

Docker MQTT安裝使用教程

2024-09-01 13:55:48
字體:
來源:轉載
供稿:網友

MQTT簡介

MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸)是IBM開發的一個即時通訊協議,有可能成為物聯網的重要組成部分。該協議支持所有平臺,幾乎可以把所有聯網物品和外部連接起來,被用來當做傳感器和制動器(比如通過Twitter讓房屋聯網)的通信協議。

Docker安裝RabbitMQ配置MQTT

使用RabbitMQ作為MQTT服務端,Eclipse Paho作為客戶端。宿主機系統為ubuntu16.04

Docker下載鏡像

docker pull daocloud.io/library/rabbitmq:3.7.4

啟動RabbitMQ

docker run -d --hostname my-rabbit --name some-rabbit -p 15672:15672 -p 5672:5672 -p 1883:1883 -p 15675:15675 daocloud.io/library/rabbitmq:3.7.4

注意映射容器端口

  • 15672 是rabbitmq management管理界面默認訪問端口
  • 5672 是amqp默認端口
  • 1883 是mqtt tcp協議默認端口
  • 15675 是web_mqtt websocket協議默認端口

啟用插件

默認安裝后我們需要手動開啟rabbitmq_management插件,rabbitmq_mqtt插件和rabbitmq_web_mqtt插件。

執行如下三條命令

docker exec <容器ID> rabbitmq-plugins enable rabbitmq_managementdocker exec <容器ID> rabbitmq-plugins enable rabbitmq_mqttdocker exec <容器ID> rabbitmq-plugins enable rabbitmq_web_mqtt

當然你也可以寫個腳本start.sh,復制到容器中

/usr/sbin/rabbitmq-plugins enable rabbitmq_management/usr/sbin/rabbitmq-plugins enable rabbitmq_mqtt/usr/sbin/rabbitmq-plugins enable rabbitmq_web_mqtt

進入容器執行這個腳本。

sh start.sh

開放宿主機端口

firewall-cmd --zone=public --add-port=15672/tcp --permanentfirewall-cmd --zone=public --add-port=5672/tcp --permanentfirewall-cmd --zone=public --add-port=1883/tcp --permanentfirewall-cmd --zone=public --add-port=15675/tcp --permanentfirewall-cmd --reload

Python MQTT客戶端實現

安裝python包

pip install paho-mqtt

發送數據demo(消費者)

# 使用前需要啟動hbase和thrift服務器# 啟動hbase在cd /usr/local/hbase下bin/start-hbase.sh  默認端口為 60000# 啟動thrift服務器cd /usr/local/hbase/bin執行./hbase-daemon.sh start thrift  默認端口為9090import sysimport osdir_common = os.path.split(os.path.realpath(__file__))[0] + '/../'sys.path.append(dir_common)  # 將根目錄添加到系統目錄,才能正常引用common文件夾import argparse  #import loggingimport time,datetimefrom common.py_log import init_logger,init_console_loggerfrom common.config import *from common.py_hbase import PyHbaseimport time,jsonfrom common.py_rabbit import Rabbit_Consumerimport paho.mqtt.client as mqttimport timeHOST = "192.168.2.46"PORT = 1883def client_loop():  client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))  client = mqtt.Client(client_id)  # ClientId不能重復,所以使用當前時間  client.username_pw_set("guest", "guest") # 必須設置,否則會返回「Connected with result code 4」  client.on_connect = on_connect  client.on_message = on_message  client.connect(HOST, PORT, 60)  client.loop_forever()def on_connect(client, userdata, flags, rc):  print("Connected with result code "+str(rc))  client.subscribe("test")def on_message(client, userdata, msg):  print(msg.topic+" "+msg.payload.decode("utf-8"))if __name__ == '__main__':  client_loop()

接收數據demo(生產者)

import sysimport osdir_common = os.path.split(os.path.realpath(__file__))[0] + '/../'sys.path.append(dir_common)  # 將根目錄添加到系統目錄,才能正常引用common文件夾import paho.mqtt.client as mqttimport timeHOST = "192.168.2.46"PORT = 1883def client_loop():  client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))  client = mqtt.Client(client_id)  # ClientId不能重復,所以使用當前時間  client.username_pw_set("guest", "guest") # 必須設置,否則會返回「Connected with result code 4」  client.on_connect = on_connect  client.on_message = on_message  client.connect(HOST, PORT, 60)  client.loop_forever()def on_connect(client, userdata, flags, rc):  print("Connected with result code "+str(rc))  client.subscribe("test")def on_message(client, userdata, msg):  print(msg.topic+" "+msg.payload.decode("utf-8"))if __name__ == '__main__':  client_loop()

生產者demo

# import paho.mqtt.client as mqttimport paho.mqtt.publish as publishimport timeHOST = "192.168.2.46"PORT = 1883def on_connect(client, userdata, flags, rc):  print("Connected with result code "+str(rc))  client.subscribe("test")def on_message(client, userdata, msg):  print(msg.topic+" "+msg.payload.decode("utf-8"))if __name__ == '__main__':  client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))  # client = mqtt.Client(client_id)  # ClientId不能重復,所以使用當前時間  # client.username_pw_set("guest", "guest") # 必須設置,否則會返回「Connected with result code 4」  # client.on_connect = on_connect  # client.on_message = on_message  # client.connect(HOST, PORT, 60)  # client.publish("test", "你好 MQTT", qos=0, retain=False) # 發布消息  publish.single("test", "你好 MQTT", qos = 1,hostname=HOST,port=PORT, client_id=client

官方文檔: 
mqtt http://www.rabbitmq.com/mqtt.html

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人中文字幕+乱码+中文字幕| 日韩成人av在线播放| 国产精品色视频| 国产91精品久久久久久| 最近的2019中文字幕免费一页| 欧美性猛交xxxx富婆| 懂色aⅴ精品一区二区三区蜜月| 国产日韩在线亚洲字幕中文| 国产精品美女免费视频| 国产欧美精品在线| 午夜精品久久久久久久99黑人| 国产精品久久久av久久久| 中文字幕无线精品亚洲乱码一区| 日韩av电影中文字幕| 久久久久久91香蕉国产| 久久九九有精品国产23| 国产精品成人av在线| 亚洲成人av片| 亚洲国产成人精品女人久久久| 日韩精品视频中文在线观看| 91久久久久久久久久久| 8090理伦午夜在线电影| 欧美电影免费观看电视剧大全| 亚洲天天在线日亚洲洲精| 国内精品一区二区三区| 欧美肥老妇视频| 不用播放器成人网| 国产精品精品久久久| 欧美亚洲午夜视频在线观看| 亚洲欧洲在线视频| 在线观看精品自拍私拍| 色综合导航网站| 热re91久久精品国99热蜜臀| 日韩精品在线播放| 欧美激情亚洲精品| 久久伊人精品一区二区三区| 自拍偷拍亚洲精品| 日韩欧美中文字幕在线播放| 国产午夜精品一区二区三区| 亚洲va欧美va国产综合久久| 精品视频久久久久久久| 主播福利视频一区| 国产香蕉97碰碰久久人人| 国产欧美日韩中文字幕| 国产日韩在线播放| 国产深夜精品福利| 在线播放国产一区二区三区| 国产成人aa精品一区在线播放| 97人人做人人爱| 日韩一区视频在线| 国产精品爽爽爽| 久久人91精品久久久久久不卡| 亚洲欧美日韩国产中文| 丰满岳妇乱一区二区三区| 日韩精品中文字幕在线播放| 国产盗摄xxxx视频xxx69| 91产国在线观看动作片喷水| 91精品国产色综合| 久久久午夜视频| 日韩欧美国产激情| 亚洲无限av看| 庆余年2免费日韩剧观看大牛| 国产精品99久久99久久久二8| 欧美成人一区在线| 亚洲最大av网站| 日韩av大片在线| 日韩一区二区久久久| 91精品国产自产在线观看永久| 欧美一乱一性一交一视频| 欧美一级淫片videoshd| 国产日韩欧美综合| 亚洲iv一区二区三区| 日韩免费精品视频| 欧美性理论片在线观看片免费| 九九久久久久久久久激情| 91精品视频一区| 91精品国产99久久久久久| 欧美久久精品一级黑人c片| 欧美日韩在线视频一区| 97人人爽人人喊人人模波多| 奇米四色中文综合久久| 国产精品成人观看视频国产奇米| 97人洗澡人人免费公开视频碰碰碰| 日韩视频免费在线观看| 57pao国产成人免费| 欧美www视频在线观看| 亚洲激情 国产| 国产91成人video| 国产亚洲一区精品| 精品一区二区电影| 精品一区二区亚洲| 久久99久久亚洲国产| 久久综合五月天| 隔壁老王国产在线精品| 欧美中在线观看| 日韩欧美中文字幕在线观看| 欧美成人精品激情在线观看| 色婷婷av一区二区三区在线观看| 91免费看片网站| 国产精品一香蕉国产线看观看| 国产伦精品免费视频| 国产视频丨精品|在线观看| 日韩大陆欧美高清视频区| 日韩欧美国产视频| 国产九九精品视频| 波霸ol色综合久久| 欧美老女人性生活| 夜夜嗨av色综合久久久综合网| 欧美性猛交xxxx乱大交蜜桃| 中文字幕最新精品| 国产精品视频永久免费播放| 亚洲成人精品久久| 欧美自拍视频在线观看| 国产精品精品久久久久久| 久久久久久亚洲精品| 国产精品久久久久久一区二区| 久久久91精品国产| 在线视频欧美日韩精品| 91精品国产91久久久久久最新| 久久久天堂国产精品女人| 岛国av一区二区在线在线观看| 精品国产自在精品国产浪潮| 国产成人一区二区三区| 亚洲国产成人久久综合一区| 中文字幕av一区中文字幕天堂| 日本a级片电影一区二区| 久久6免费高清热精品| 不卡av电影在线观看| 伊人精品在线观看| 国产成人激情视频| 久久精彩免费视频| 日本一本a高清免费不卡| 久久激情视频久久| 日日摸夜夜添一区| 亚洲第一二三四五区| 日韩精品一二三四区| 久久久国产精品免费| 日韩电影在线观看中文字幕| 欧美视频裸体精品| 高清一区二区三区日本久| 国产亚洲aⅴaaaaaa毛片| 国产精品嫩草视频| 国产精品久久77777| 亚洲白虎美女被爆操| 国产精品久久中文| 伊人久久久久久久久久久久久| 精品视频在线播放| 亚洲天堂av电影| 成人网在线视频| 国产精品入口尤物| 欧美国产精品va在线观看| 一区二区三区视频观看| 亚洲人精品午夜在线观看| 国产日韩欧美日韩大片| 精品国产一区二区三区在线观看| 精品国产一区二区三区在线观看| 久久精品国产一区二区三区| 国产精品一区二区三区毛片淫片| 日韩专区在线观看| 成人福利视频网| 国产欧美最新羞羞视频在线观看| 国产精品视频区| 日本精品久久电影| 97视频在线观看视频免费视频|