SDR Docker Base Image

March 1, 2026 ยท View on GitHub

Purpose

Provide a basic image, with all normal packages common to all installs of mikenye, fredclausen, or kx1t SDR docker images, to reduce download time and disk space usage for users.

Adding containers

  1. Create your new docker file
  2. Update github actions
  3. Update the Tags section
  4. Update the Projects and Tag Tree section

Tags

TagExtendsIncluded Packages
base-s6-overlay (via mikenye/deploy-s6-overlay), mikenye/docker-healthchecks-framework, bc, ca-certificates, curl, gawk, ncat, net-tools, procps, socat, python3, [python3-pkg-resources][python3-pkg-resources]
acars-decoderrtlsdrlibacars and all prerequisites for full functionality: (zlib1g, libxml2, libsqlite3)
readsb-fullrtlsdrContains the latest dev branch of Mictronics/readsb-protobuf and all prerequisites for full functionality: (bladeRF, bladeRF FPGA images, libiio (for PlutoSDR), libad9361-iio (for PlutoSDR))
wreadsbbaseContains the latest dev branch of wiedehopf's fork of readsb with rtl-sdr & libusb.
rtlsdrbaseContains the latest master branch of rtl-sdr and latest tagged release of SoapyRTLSDR, and prerequisites (eg: libusb)
dump978-fullwreadsbContains the latest tagged release of flightaware/dump978, and prerequisites (various boost libraries)

Using

Simply add FROM ghcr.io/sdr-enthusiasts/docker-baseimage:<tag> at the top of your Dockerfile, replacing <tag> with one of the tags above.

The base image provides an [ENTRYPOINT] for starting the container so unless you have a specific reason to change this you do not have to provide an [ENTRYPOINT] in your Dockerfile.

Example:

FROM ghcr.io/sdr-enthusiasts/docker-baseimage:rtlsdr
RUN ...

Tag-specific Notes

readsb-full

  • The readsb webapp and configuration files have been included in the image (see /usr/share/readsb/html and /etc/lighttpd/conf-available), however lighttpd has not been installed or configured. You will need to do this if you want this functionality in your image.
  • The collectd configuration files have been included in the image (see /etc/collectd/collectd.conf.d and /usr/share/readsb/graphs), however collectd/rrdtool have not been installed or configured. You will need to do this if you want this functionality in your image.
  • The installed version of readsb's protobuf protocol file is located at: /opt/readsb-protobuf, should you need this in your image.
  • bladeRF FPGA firmware images are located at: /usr/share/Nuand/bladeRF

Projects and Tag Tree

TagSub-tags UsingUp-Stream Projects Using
baseALLsdr-enthusiasts/acars_router,sdr-enthusiasts/airspy-adsb, sdr-enthusiasts/docker-adsbhub, sdr-enthusiasts/docker-opensky-network, sdr-enthusiasts/docker-rtlsdrairband, sdr-enthusiasts/docker-flightradar24, sdr-enthusiasts/docker-planefinder, sdr-enthusiasts/docker-acarshub, sdr-enthusiasts/docker-adsbexchange, kx1t/docker-planefence, sdr-enthusiasts/docker-reversewebproxy, kx1t/docker-raspberry-noaa-v2
acars-decoder-sdr-enthusiasts/docker-acarsdec, sdr-enthusiasts/docker-dumpvdl2
rtlsdracars-decoder, readsb-full, wreadsbsdr-enthusiasts/acars-oxide
readsb-full-sdr-enthusiasts/docker-readsb-protobuf
dump978-full-sdr-enthusiasts/docker-piaware, sdr-enthusiasts/docker-dump978
wreadsbdump978-fullsdr-enthusiasts/docker-tar1090, sdr-enthusiasts/docker-radarvirtuel, sdr-enthusiasts/docker-airnavradar