赞
踩
17年的时候曾经写过一篇类似笔记,Docker实战 LoRaServerProject,由于年代久远,现在 ChirpStack 已经发生了很大的变化,所以在19年中重写一篇,帮助初学者节省一些时间。
这篇笔记介绍如何使用 Docker-Compose 快速部署 ChirpStack 项目,主要是对官方 docker 快速教程的实践,增加了一些易错点的记录。
小能手最近在学习 ChirpStack 项目,应该是最有影响力的 LoRaWAN 服务器开源项目。它组件丰富,代码可读性强,是个很好的学习资料。更多学习笔记,可点此查看。
$ git clone https://github.com/brocaar/chirpstack-docker.git
$ cd chirpstack-docker
这里有个非常易错的点,由于官方默认使用 EU868 的 region 配置,我们在中国如果不加处理的话,节点则会采用同频下行,而非 CN470 的“+48” 方式。
配置位于:\chirpstack-docker\configuration\chirpstack-network-server\chirpstack-network-server.toml
[network_server.band]
# LoRaWAN band to use.
#
# Valid values are:
# * AS_923
# * AU_915_928
# * CN_470_510
# * CN_779_787
# * EU_433
# * EU_863_870
# * IN_865_867
# * KR_920_923
# * RU_864_870
# * US_902_928
name="CN_470_510"
此外,可以根据需要设置下默认的子信道,这样 AS 的 Web 中就不必再每次都填写。
[network_server.network_settings]
# Enable only a given sub-set of channels
#
# Use this when ony a sub-set of the by default enabled channels are being
# used. For example when only using the first 8 channels of the US band.
#
# Example:
# enabled_uplink_channels=[0, 1, 2, 3, 4, 5, 6, 7]
enabled_uplink_channels=[0, 1, 2, 3, 4, 5, 6, 7]
$ docker-compose up
执行 docker-compose up 命令,会整合输出所有容器的输出。
在 AS 的界面中添加相应 NS,host name 需要填写容器的名字(容器网络里可以使用容器名称来寻址)。从 docker-compose.yml 的配置中我们可以看到容器名是:chirpstack-network-server,所以 WEB 中应该配置为 chirpstack-network-server:8000。
services:
chirpstack-network-server:
image: chirpstack/chirpstack-network-server:3
volumes:
- ./configuration/chirpstack-network-server:/etc/chirpstack-network-server
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。