2.2 KiB
ChirpStack Docker example
This repository contains a skeleton to setup the ChirpStack open-source LoRaWAN Network Server stack using Docker Compose.
Note: Please use this docker-compose.yml
file as a starting point for testing
but keep in mind that for production usage it might need modifications.
Directory layout
docker-compose.yml
: the docker-compose file containing the servicesconfiguration/chirpstack
: directory containing the ChirpStack configuration filesconfiguration/chirpstack-gateway-bridge
: directory containing the ChirpStack Gateway Bridge configurationconfiguration/postgresql/initdb/
: directory containing PostgreSQL initialization scripts
Configuration
This setup is pre-configured for all regions. You can either connect a ChirpStack Gateway Bridge instance to the MQTT broker (port 1883). Please note that:
- You must prefix the MQTT topic with the region
Please see the region configuration files in the
configuration/chirpstack
for a list of topic prefixes (e.g. eu868, us915_0, au915, as923_2, ...). - The protobuf marshaler is configured.
This setup also comes with a ChirpStack Gateway Bridge instance which is configured to the eu868 topic prefix. You can connect your UDP packet-forwarder based gateway to port 1700.
Data persistence
PostgreSQL and Redis data is persisted in Docker volumes, see the docker-compose.yml
volumes
definition.
Requirements
Before using this docker-compose.yml
file, make sure you have Docker
installed.
Importing TTN device repository
To import the TTN lorawan-devices repository (optional step), run the following command:
make import-lorawan-devices
This will clone the lorawan-devices
repository and execute the import-ttn-lorawan-devices
command of ChirpStack. Please note that for this step, you need to have the git
and make
commands installed.
Usage
To start the ChirpStack simply run:
$ docker-compose up
After all the components have been initialized and started, you should be able to open http://localhost:8080/ in your browser.