LEAPS 服务器
简介
LEAPS Server is a central data hub for the UWB network. It interconnects all the gateway devices with the world via a MQTT Broker.
主要功能
它的功能包括上行数据集中器, 下行数据路由器, 数据处理器, 定位引擎, 设备管理, 设备访问控制和服务质量.
It communicates with the world via the connectors. Currently, the supported connector is MQTT including support for AWS.
The LEAPS 服务器 runs as a daemon service on the Linux platform.
安装
System requirements
注解
Docker的系统要求因操作系统而异.
For Linux, you need a 64-bit architecture, a compatible kernel version, and specific kernel features.
On Windows, use Docker Desktop on Windows 10 with virtualization enabled.
在 macOS 上,请使用配备 macOS 10.13 或更新版本的Docker Desktop. 在硬件方面,建议至少配备 2GB 内存以及足够的 CPU 和磁盘空间.
有关最新详情,请参阅 Docker 官方文档.
说明
在电脑上安装 Docker
此外,您还可以参考以下命令进行安装:
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh ./get-docker.sh sudo usermod -aG docker $USER
Create folder
leaps_server_hub
and subfolderdata
. Then, add theleaps-server.conf
configuration file inleaps_server_hub/data
.
####################################################################### # LEAPS Server settings # # ----------------------------------------------------------------- # Logging # ----------------------------------------------------------------- log_level = 0 # Logging level, default is 0 (0=none, 1=fatal, 2=error, 3=warning, 4=info, 5=debug, 6=verbose) # Path to log file. Comment out to disable logging to file (log to stdio instead). # log = leaps-server.log # ----------------------------------------------------------------- # Certificate based SSL/TLS support # ----------------------------------------------------------------- # # cafile - Authority certificates that have signed your server certificate. # certfile - Path to the PEM encoded server certificate. # keyfile - Path to the PEM encoded keyfile. # gw_auth - When using TLS on the interface with the gateways, this parameter configures TLS authentication between server and the gateway (0=server 1=mutual). # # cafile = /etc/leaps-server/cacert.pem # certfile = /etc/leaps-server/servercert.pem # keyfile = /etc/leaps-server/serverkey.pem # gw_auth = 0 # Optional AES 128-bit private key as hexadecimal number. If specified, the key is used to encrypt sensitive data # for example the WiFi password published on the MQTT interface. # aes_128_key = 00112233445566778899aabbccddeeff # ----------------------------------------------------------------- # MQTT Broker # ----------------------------------------------------------------- # MQTT API variant "pans" or "leaps" mqtt_api = pans # include network ID (panid) in the MQTT topics mqtt_with_panid = true # Specifies an alias for particular UWB network that is then used in the MQTT topic instead of the network ID (pan ID) . # Parameter can be used multiple times and there might be multiple definitions separated by spaces which are then added to the list of known aliases. # Alias definitions must follow format <ID>:<ALIAS_STRING>. Multiple definitions must be separated with spaces. # Network ID (PAN ID) can be hexadecimal number (withe prefix \"0x\") or decimal number. # mqtt_panid_alias = [123:NetworkA] [0x0002:Net B] # mqtt_panid_alias = [0XABCD:Network_C] mqtt_clid = 1 mqtt_port = 1883 mqtt_host = localhost # Or your Computer's IP Address # For PANS PRO RTLS mqtt_user = pans mqtt_password = panspass mqtt_topic_prefix = pans # For PANS PRO RTLS # mqtt_user = dwmuser # mqtt_password = dwmpass # mqtt_topic_prefix = dwm # Certificates used on MQTT interface # mqtt_cafile = /etc/leaps-server/cacert.pem # mqtt_certfile = /etc/leaps-server/servercert.pem # mqtt_keyfile = /etc/leaps-server/serverkey.pem # Period in seconds after which all retained topics are published regardless # whether the content has changed or not. Disabled when set to 0. Disabled by default. #mqtt_refresh = 0 # ----------------------------------------------------------------- # Secondary MQTT Broker # ----------------------------------------------------------------- # # mqtt_clid_sec = 2 # mqtt_port_sec = 1883 # mqtt_host_sec = # For PANS PRO RTLS # mqtt_user_sec = dwmuser # mqtt_password_sec = dwmpass # Certificates used on MQTT interface # mqtt_cafile_sec = /etc/leaps-server/cacert.pem # mqtt_certfile_sec = /etc/leaps-server/servercert.pem # mqtt_keyfile_sec = /etc/leaps-server/serverkey.pem # ----------------------------------------------------------------- # TCP # ----------------------------------------------------------------- # tcp_port = 7777 # ----------------------------------------------------------------- # Other # ----------------------------------------------------------------- # maximum number of attempts of configuration and service commands # cmd_att = 3
在电脑上打开命令提示符或终端窗口.
Navigate to the folder where you created the configuration file.
例如,在 Ubuntu (Linux) 上:
cd leaps_server_hub/
安装 LEAPS 服务器 Docker 软件包并运行:
docker run -d -p 7777:7777/tcp -p 7777:7777/udp --name some_name -v /path/to/data/data/:/app/data/ leapslabs/leaps_server:tag /app/leaps-server --cfg /app/data/leaps-server.conf
where
some_name
is the name you want to assign to your container andtag
is the tag specifying theleaps-server
version you want.The leaps_server instance is using ports
7777
forTCP
andUDP
communication with the Gateway so these ports need to be remapped from the host to leaps_server instance with command-p 7777:7777/tcp -p 7777:7777/udp
.It is not recommended to change the port numbers unless needed. If they need to be modified, please adapt accordingly the port settings on the Gateway.
推荐的运行选项
--user $(id -u):$(id -g)
在特定用户和组下运行实例.
--restart unless-stopped
Restart automatically the instance in case the server would crash.
The LEAPS Server installation process will begin.
例如,在 Ubuntu (Linux) 上:
docker run -d -p 7777:7777/tcp -p 7777:7777/udp --name leaps_server -v "$(pwd)"/data/:/app/data leapslabs/leaps_server:latest /app/leaps-server --cfg /app/data/leaps-server.conf Unable to find image 'leapslabs/lc_server:latest' locally latest: Pulling from leapslabs/lc_server a458657ccc71: Pull complete Digest: sha256:a19b127656d41d8607f043c2c83924e5b9a5cbd4dc23cfbed070be3b9cfc6b9a Status: Downloaded newer image for leapslabs/lc_server:latest 320d3768289874e063619f75faca7a24dd75a08884df8cd8fb2cc9b54c6f0a46
确认安装成功,运行:
例如,在 Ubuntu (Linux) 上:
docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b1145b72db35 leapslabs/lc_server:latest "sh -c 'cd /app && …" 37 seconds ago 11 seconds ago lc_server
So, you have successfully installed and started LEAPS Server on your PC.
Getting started
LEAPS 服务器 Docker
Start LEAPS Server, run:
docker start lc_server
Stop LEAPS Server, run:
docker stop lc_server
Restart LEAPS Server, run:
docker restart lc_server
Remove LEAPS Server, run
docker rm --force lc_server
网络配置
MQTT API variant “pans” or “leaps”
LEAPS ID into the published topics
mqtt_with_panid = true mqtt_clid = 1 mqtt_port = 1883 mqtt_host = localhost # Or your Computer's IP Address
LEAPS RTLS account configuration
mqtt_user = pansuser mqtt_password = panspass mqtt_topic_prefix = pans
TCP port is 7777