您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關docker-compose中怎么部署ChirpStack,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
1. Git(非必須,可以先下載源碼)
2. Docker
3. Docker-compose
關于LoraWan Server
在講LoraWan Server之前需要先了解一下LoraWan協議,LoraWan是一種物聯網遠距離傳輸協議。引用一句官方的介紹是這樣的:LoRaWAN開放規范是基于LoRa技術的低功耗廣域網(LPWAN)協議。
協議棧也引用官方的圖:
數據是如何從傳感器發送到服務器并且被相應的應用處理的呢?可以看下下面的圖,依然是來自官方:
最上面的是傳感器,然后通過LoraWan協議將數據傳輸給了網關,網關通過網絡傳輸到網絡服務器(NS),NS將數據分發給對應的應用服務器(AS)。
舉個栗子:一個智慧廁所當中的洗手液盒和紙巾盒里面都裝有LoraWan的傳感器,并且是由兩個廠商分別提供設備。他們分別將余量數據(還剩下多少皂液/還剩下多少紙巾)上傳到了(當然包含了網關傳輸的部分)網絡服務器,網絡服務器就將紙巾盒的數據分發給紙巾盒廠商的應用服務器,將皂液盒的數據分發給皂液盒廠商的應用服務器。
這樣在大家都遵循LoraWan協議的前提下就達到了廠商中立的情況,哪一種設備不好我都可以找符合LoraWan規范的廠商進行替代,不需要擔心廠商鎖定的問題。
在這個過程中,網絡服務器就起著一個相當重要的作用了,下面來看看當前有哪一些開源的網絡服務器。
開源的LoraWan Server
當前開源的LoraWan Server主要有三個:
1. [chirpstack]https://www.chirpstack.io/
2. [lorawan-server]https://github.com/gotthardp/lorawan-server)
3. [ttn]https://github.com/TheThingsNetwork/ttn
其中`chirpStack`和`ttn`是Golang實現,`lorawan-server`是Erlang實現.
我只接觸過前兩者,本文只講述chirpStack,也是我司正在使用的LoraWanServer技術棧,嘗試過`ttn`的部署,上手簡易度沒有chirpStack好,所以沒有再繼續研究`ttn`.
部署ChirpStack
ChirpStack的部署相當簡單,這里使用`docker-compose`部署作為例子。
1. 下載源碼
> git clone https://github.com/brocaar/chirpstack-docker.git
2. 用docker-compose部署
> cd chirpstack-docker > docker-compose up -d
下面是我執行部署命令后的一個輸出:
[root@node123 chirpstack-docker]# docker-compose up -dCreating network "chirpstack-docker_default" with the default driverCreating chirpstack-docker_chirpstack-gateway-bridge_1 ... doneCreating chirpstack-docker_chirpstack-geolocation-server_1 ... doneCreating chirpstack-docker_chirpstack-network-server_1 ... doneCreating chirpstack-docker_mosquitto_1 ... doneCreating chirpstack-docker_redis_1 ... doneCreating chirpstack-docker_chirpstack-application-server_1 ... doneCreating chirpstack-docker_postgresql_1 ... done
現在打開`IP:8080`應該就可以看到ChirpStack自帶的Application Server的頁面了,我這里的IP是`192.168.3.123`, 打開后可以看到登陸頁面:
默認的帳號密碼是`admin/admin`,能夠登陸就已經說明部署成功了。
當然這個時候還不能接收傳感器數據的(指的是網絡服務器的配置問題),默認的用的頻段是`EU868`,我們在國內需要使用`CN_470_510`,修改`configuration/chirpstack-network-server/chirpstack-network-server.toml`文件中的`network_server.band`為`CN_470_510`
[network_server.band]name="CN_470_510"
將下面的`network_server.network_settings`配置注釋掉:
[network_server.network_settings]# [[network_server.network_settings.extra_channels]]# frequency=867100000# min_dr=0# max_dr=5# [[network_server.network_settings.extra_channels]]# frequency=867300000# min_dr=0# max_dr=5# [[network_server.network_settings.extra_channels]]# frequency=867500000# min_dr=0# max_dr=5# [[network_server.network_settings.extra_channels]]# frequency=867700000# min_dr=0# max_dr=5# [[network_server.network_settings.extra_channels]]# frequency=867900000# min_dr=0# max_dr=5`
以上就是docker-compose中怎么部署ChirpStack,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。