Instructions to Run the Containerized Client
SDR Hardware Setup
Installing Docker on Raspberry Pi
synthesized from: https://www.simplilearn.com/tutorials/docker-tutorial/raspberry-pi-docker
- Upgrade and Update
sudo apt-get update && sudo apt-get upgrade
- Download and Install Docker on Rasberry Pi Environment
- Push this installation script:
curl -fsSL [https://get.docker.com](https://get.docker.com/) -o [get-docker.sh](http://get-docker.sh/)
- Run the script:
sudo sh [get-docker.sh](http://get-docker.sh/)
- Push this installation script:
- Add the Pi user to the Docker group
sudo usermod -aG docker Pi
- Check Docker version and System Wide Details
docker version
docker info
Running the Containerized Client
clone the repo:
gh repo clone ml4wireless/adsb-nats
cd into the
client-rtl-docker
folderRun
make
in command line to build the Docker imageConnect the SDR device
In the script
run-docker.sh
- for
NATS_TOKEN
, insert the token (”sahai”) - for
REPORTER_UID
, insert your name or desired reporting user id for your client- this will show up on the frontend to help identify which airplane data points your device has reported
- for
Create a screen session to use to keep the program executing in the background with
screen -S <session_name>
Use the script
[run-docker.sh](http://run-docker.sh)
we created earlier to start the execution of the container:- **Note:** If it is your first time running the script, run
chmod +x [run-docker.sh](http://run-docker.sh)
to make it executable./run-docker.sh
- **Note:** If it is your first time running the script, run
Detach the Screen session (keeps the program running in the background even if you exit the terminal)
- press
ctrl + a + d
to detach it -> you are now done (you may have to try doing this multiple times for it to work) - ***Optional Check: To make sure the screen session was created and detached, use the command
screen -list
. You should see something like this, with your session name-*
- press
- Debugging Help 🐞
- We have added a environment variable USE_RECORDED_DATA in
run_docker.sh
for debugging purposes. Set it to1
in order to use pre-recorded data instead of live data.
- We have added a environment variable USE_RECORDED_DATA in
Verify that it’s Working
Method 1: Using the Frontend
Using the Frontend Airplane Tracker Visualization
TODO - link to frontend
Method 2: Using the System Health Dashboard
TODO - link to dashboard