有關MQTT的介紹請看這篇
樹莓派安裝 Mosquitto 輕量級 MQTT Broker 教學,連接各種物聯網設備
我是要Homekit透過MQTT,來控制ESP8266製作的燈座開關
這個部分之後在專門發一篇教學
本篇是要在Docker上安裝Mosquitto
1.先在Docker上建立MQTT的資料夾
2.在MQTT資料夾內增加三個資料夾,分別為
data、config、log
3.到Github下載docker的檔案
https://github.com/toke/docker-mosquitto
4.把壓縮檔內config的資料夾複製到docker的mqtt內
5.編輯mosquitto.conf這個檔案,MQTT只在區網內跑,所以我也沒設驗證方是or帳號密碼
log似乎有點問題,所以前面加#註解掉,預設port為1883
6.現在可以下指令安裝mqtt到docker了
mqtt2為mqtt的docker名稱 ,要改成別的,相對應的資料夾也要改
volume2請改成你安裝docker的位置
docker run --name mqtt2 --restart=always --net=host -tid -v /volume2/docker/mqtt2/config:/mqtt/config:ro -v /volume2/docker/mqtt2/log:/mqtt/log -v /volume2/docker/mqtt2/data/:/mqtt/data/ toke/mosquitto
若沒先建立資料夾就會出現上圖紅色底線那串error
7.你現在能在Docker內運行MQTT Broker了
想要測試mqtt broker有沒有正常work
1.在pc上安裝mosquitto,請自行Google或是參考文章開頭介紹MQTT的Blog
2.開兩個cmd cd到安裝的mqtt broker資料夾
像是C:\Program Files (x86)\mosquitto\
然後第一個cmd輸入以下指令
mosquitto_sub -v -t ds916/test -h broker的ip
第二個cmd輸入
mosquitto_pub -t ds916/test -h broker的ip -m "1"
此時若第一個cmd有顯示ds916/test 1就代表docker的mqtt broker建置成功
參考文獻
Setting up a local Mosquitto server using Docker for MQTT Communication
沒有留言:
張貼留言