sdr-enthusiasts / docker-flightradar24

Multi-architecture docker container (arm32v7/arm64/x86_64) running flightradar24 fr24feed. Designed to work in tandem with https://sdr-e.com/docker-adsb-ultrafeeder
144 stars 19 forks source link
ads-b adsb docker-container rtl-sdr rtlsdr

sdr-enthusiasts/docker-flightradar24

Build Passing Contributors Last Commit Discord

Docker container running FlightRadar24's fr24feed. Designed to work in tandem with ultrafeeder or any other BEAST formal data source. Builds and runs on x86_64, armhf & arm64.

docker-flightradar24 pulls ModeS/BEAST information from the ultrafeeder container (or another host providing ModeS/BEAST data), and sends data to FlightRadar24.

For more information on what fr24feed is, see here: share-your-data.

Supported tags and respective Dockerfiles

Obtaining a Flightradar24 Sharing Key for ADSB

First-time users should obtain a Flightradar24 sharing key.

If you don't already have a FlightRadar24 account, then first go to the FlightRadar24 website and create an account. Remember the email address you used; you will be asked for it later. Then copy and paste the following command on your target machine (or really any armhf/arm64/x86_64 linux machine with Docker installed):

docker run -it --rm ghcr.io/sdr-enthusiasts/docker-baseimage:qemu bash -c "$(curl -sSL https://raw.githubusercontent.com/sdr-enthusiasts/docker-flightradar24/main/get_adsb_key.sh)"

This will start up a container. After installing a bunch of software (which may take a while depending on the speed of your machine and internet connection), it will take you through the signup process. Most of the answers don't matter as during normal operation the configuration will be set with environment variables. I would suggest answering as follows:

Note that there is a limit of 3 feeders per FR24 account. ADSB and UAT (see below) both count as 1 feeder. If you have more than 3 feeders, you will need to contact support@fr24.com to request an additional Feeder Key. Make sure to send them your account email-address, latitude, longitude, altitude, and if the key is for an ADSB or UAT feeder.

If your longitude or latitude is close to 0, use 0.11 instead to work around bad programming by fr24. (invalid longitude error)

Up-and-Running with docker run

docker run \
 -d \
 --rm \
 --name fr24feed \
 -e BEASTHOST=beasthost \
 -e FR24KEY=xxxxxxxxxxx \
 -p 8754:8754 \
 ghcr.io/sdr-enthusiasts/docker-flightradar24:latest

Up-and-Running with Docker Compose

version: '2.0'

services:
  fr24feed:
    image: ghcr.io/sdr-enthusiasts/docker-flightradar24:latest
    tty: true
    container_name: fr24feed
    restart: always
    ports:
      - 8754:8754
    environment:
      - BEASTHOST=beasthost
      - FR24KEY=xxxxxxxxxxx

Runtime Environment Variables

There are a series of available environment variables:

Environment Variable Purpose Default
BEASTHOST Required. IP/Hostname of a Mode-S/BEAST provider (dump1090) readsb
BEASTPORT Optional. TCP port number of Mode-S/BEAST provider (dump1090) 30005
FR24KEY Required. Flightradar24 Sharing Key
MLAT Set to yes to enable MLAT (optional) no
BIND_INTERFACE Optional. Set a bind interface such as 0.0.0.0 to allow access from non-private IP addresses none
VERBOSE_LOGGING Set to true to enable verbose logging (optional) false
FR24KEY_UAT Optional. Only used if you are feeding UAT data - see section below empty
UATHOST Optional. Only used if you are feeding UAT data and you don't use the default value dump978
UATPORT Optional. Only used if you are feeding UAT data and you don't use the default value 30978

Ports

The following ports are used by this container:

UAT configuration (USA only)

UAT is a second channel (978 MHz) on which ADSB data is transmitted by some aircraft that only fly at lower altitudes. It is only used in the US. If you are not in the US (or on its borders), then you can safely skip this section.

If you have a UAT receiver with an existing dump978 container or dump978-fa deployment, you can add this to your feed following the steps below. Note - if you don't already have a UAT receiver deployed, you should first read and implement this container before going any further. We only support UAT deployments with a separate dump978 container or a separately installed dump978-fa instance.

  1. Signup for a UAT sharing key. Note - you CANNOT reuse your existing ADSB sharing key. To do so, copy and paste the following command on your target machine (or really any armhf/arm64/x86_64 linux machine with Docker installed):
docker run -it --rm ghcr.io/sdr-enthusiasts/docker-baseimage:qemu bash -c "$(curl -sSL https://raw.githubusercontent.com/sdr-enthusiasts/docker-flightradar24/main/get_uat_key.sh)"
Congratulations! You are now registered and ready to share UAT data with Flightradar24.
+ Your sharing key (fxxxxxxxxxxx4) has been configured and emailed to you for backup purposes.
+ Your radar id is T-XXXX120, please include it in all email communication with us.
+ Please make sure to start sharing data within one month from now as otherwise your ID/KEY will be deleted.
  - FR24KEY_UAT=fxxxxxxxxxxx4
  - UATHOST=hostname
  - UATPORT=12345

Note that there is a limit of 3 feeders per FR24 account. ADSB and UAT each count as 1 feeder. If you have more than 3 feeders, you will need to contact support@fr24.com to request an additional Feeder Key. Make sure to send them your account email-address, latitude, longitude, altitude, and if the key is for an ADSB or UAT feeder.

Restart the container. After a few minutes, you can see on https://www.flightradar24.com/account/data-sharing that data is received.

Logging

Getting Help

Having troubles with the container or have questions? Best support is available on the #adsb-containers channel of the SDR-Enthusiasts Discord seerver. Feel free to join and converse.

Alternatively, you can create a new issue but sometimes it takes a while for us to notice and respond. Support on Discord is much faster!