Giter Club home page Giter Club logo

docker-piaware's Introduction

sdr-enthusiasts/docker-piaware

Docker Image Size (tag) Discord

FlightAware's PiAware docker container including support for RTL-SDR, bladeRF and others. Includes dump1090 and dump978.

Builds and runs on linux/amd64, linux/386, linux/arm/v7 and linux/arm64.

For more information on what PiAware is, see here: FlightAware - PiAware.

This container can operate in "net only" mode and pull ADS-B Mode-S & UAT data from another host/container. This is the recommended way of deploying the container, and I'd humbly suggest sdr-enthusiasts/docker-readsb-protobuf and sdr-enthusiasts/docker-dump978 (if you live in an area that uses UAT).

Note: bladerf/hackrf/limesdr/radarcape - Support for these is compiled in, but I need to complete the wrapper/helper scripts. I don't have access to these devices. If you do, and would be willing to test, please get in touch with me!

Note for Users running 32-bit Debian Buster-based OSes on ARM

Please see: Buster-Docker-Fixes!

Table of Contents

Supported tags and respective Dockerfiles

  • latest should always contain the latest released version of piaware and support tools, for all supported architectures.
  • Specific version and architecture tags are available if required, however these are not regularly updated. It is generally recommended to run latest.
  • There are also latest and version-specific tags appended with _nohealthcheck where the container healthchecks have been excluded from the image build. See issue #43.

Multi Architecture Support

Currently, this image should pull and run on the following architectures:

  • linux/i386
  • linux/amd64
  • linux/arm/v7
  • linux/arm64

In order to ensure dump1090 is optimised for the hardware running it, the dump1090 binary is built on first-run of the container.

Prerequisites

If using an RTL-SDR, before this container will work properly, you must blacklist the kernel modules for the RTL-SDR USB device from the host's kernel.

To do this, create a file /etc/modprobe.d/blacklist-rtl2832.conf containing the following:

# Blacklist RTL2832 so docker container piaware can use the device

blacklist rtl2832
blacklist dvb_usb_rtl28xxu
blacklist rtl2832_sdr

Once this is done, you can plug in your RTL-SDR USB device and start the container.

Failure to do this will result in the error below being spammed to the container log.

2019-04-29 21:14:31.642500500  [dump1090-fa] Kernel driver is active, or device is claimed by second instance of librtlsdr.
2019-04-29 21:14:31.642635500  [dump1090-fa] In the first case, please either detach or blacklist the kernel module
2019-04-29 21:14:31.642663500  [dump1090-fa] (dvb_usb_rtl28xxu), or enable automatic detaching at compile time.
2019-04-29 21:14:31.642677500  [dump1090-fa]
2019-04-29 21:14:31.642690500  [dump1090-fa] usb_claim_interface error -6

If you get the error above even after blacklisting the kernel modules as outlined above, the modules may still be loaded. You can unload them by running the following commands:

sudo rmmod rtl2832_sdr
sudo rmmod dvb_usb_rtl28xxu
sudo rmmod rtl2832

Determining your Feeder ID

You need to specify a feeder-id for the container, as this is used by FlightAware to track your PiAware instance.

Make sure you set your feeder ID via the FEEDER_ID environment variable. Failure to do this will cause a new FlightAware site ID to be generated every time you launch the container.

Already running PiAware

You'll need your feeder-id from your existing feeder.

To get your feeder-id, log onto your feeder and issue the command:

piaware-config -show feeder-id

New to PiAware

You'll need a feeder-id. To get one, you can temporarily run the container, to allow it to communicate with the FlightAware servers and get a new feeder ID.

Run the commands:

docker pull ghcr.io/sdr-enthusiasts/docker-piaware:latest
timeout 30 docker run --rm ghcr.io/sdr-enthusiasts/docker-piaware:latest | grep "my feeder ID"

The command will run the container for 30 seconds, which should be ample time for the container to receive a feeder-id.

For example:

timeout 30 docker run --rm ghcr.io/sdr-enthusiasts/docker-piaware:latest | grep "my feeder ID"

Will output:

Set allow-mlat to yes in /etc/piaware.conf:1
Set allow-modeac to yes in /etc/piaware.conf:2
Set allow-auto-updates to no in /etc/piaware.conf:3
Set allow-manual-updates to no in /etc/piaware.conf:4
2020-03-06 06:16:11.860212500  [piaware] my feeder ID is acbf1f88-09a4-3a47-a4a0-10ae138d0c1g
write /dev/stdout: broken pipe
Terminated

As you can see from the output above, the feeder-id given to us from FlightAware is acbf1f88-09a4-3a47-a4a0-10ae138d0c1g.

You'll now want to "claim" this feeder.

To do this, go to: FlightAware PiAware Claim and follow the instructions there.

Deployment Examples

Example docker run command with RTL-SDR USB for reception of 1090MHz

docker run \
 -d \
 --rm \
 --name piaware \
 --device /dev/bus/usb \
 -e TZ="Australia/Perth" \
 -e FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37 \
 -e RECEIVER_TYPE=rtlsdr \
 -p 8080:80 \
 --tmpfs=/run:exec,size=64M \
 --tmpfs=/var/log \
 ghcr.io/sdr-enthusiasts/docker-piaware:latest

Example docker-compose.yml with RTL-SDR USB for reception of 1090MHz

version: "2.0"

services:
  piaware:
    image: ghcr.io/sdr-enthusiasts/docker-piaware:latest
    tty: true
    container_name: piaware
    restart: always
    devices:
      - /dev/bus/usb:/dev/bus/usb
    ports:
      - 8080:80
      - 30003:30003
      - 30005:30005
    environment:
      - TZ="Australia/Perth"
      - FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37
      - RECEIVER_TYPE=rtlsdr
    tmpfs:
      - /run:exec,size=64M
      - /var/log

Example docker run command with 2x RTL-SDR USB for reception of 1090MHz and 978MHz

This will currently only work in the United States of America, as they are the only country that uses ADS-B UAT on 978MHz.

This example assumes that:

  • Your 1090MHz RTL-SDR has its serial set to 00001090
  • Your 978MHz RTL-SDR has its serial set to 00000978
docker run \
 -d \
 --rm \
 --name piaware \
 --device /dev/bus/usb \
 -e TZ="Australia/Perth" \
 -e RECEIVER_TYPE=rtlsdr \
 -e DUMP1090_DEVICE=00001090 \
 -e UAT_RECEIVER_TYPE=rtlsdr \
 -e DUMP978_DEVICE=00000978 \
 -e FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37 \
 -p 8080:80 \
 --tmpfs=/run:exec,size=64M \
 --tmpfs=/var/log \
 ghcr.io/sdr-enthusiasts/docker-piaware:latest

Example docker-compose.yml with 2x RTL-SDR USB for reception of 1090MHz and 978MHz

This will currently only work in the United States of America, as they are the only country that uses ADS-B UAT on 978MHz.

version: "2.0"

services:
  piaware:
    image: ghcr.io/sdr-enthusiasts/docker-piaware:latest
    tty: true
    container_name: piaware
    restart: always
    devices:
      - /dev/bus/usb:/dev/bus/usb
    ports:
      - 8080:80
      - 30003:30003
      - 30005:30005
    environment:
      - TZ="Australia/Perth"
      - FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37
      - RECEIVER_TYPE=rtlsdr
      - DUMP1090_DEVICE=00001090
      - UAT_RECEIVER_TYPE=rtlsdr
      - DUMP978_DEVICE=00000978
    tmpfs:
      - /run:exec,size=64M
      - /var/log

Example docker run with external Mode-S/BEAST provider

An example of an external Mode-S/BEAST provider would be:

In the example below, it is assumed that the external BEAST provider resolves to beasthost and is listening for connections on TCP port 30005.

docker run \
 -d \
 --rm \
 --name piaware \
 -e TZ="Australia/Perth" \
 -e RECEIVER_TYPE=relay \
 -e BEASTHOST=beasthost \
 -e BEASTPORT=30005 \
 -e FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37 \
 --tmpfs=/run:exec,size=64M \
 --tmpfs=/var/log \
 ghcr.io/sdr-enthusiasts/docker-piaware:latest

Example docker-compose.yml with external Mode-S/BEAST provider

An example of an external Mode-S/BEAST provider would be:

In the example below, it is assumed that the external BEAST provider resolves to beasthost and is listening for connections on TCP port 30005.

version: "2.0"

services:
  piaware:
    image: ghcr.io/sdr-enthusiasts/docker-piaware:latest
    tty: true
    container_name: piaware
    restart: always
    environment:
      - TZ="Australia/Perth"
      - RECEIVER_TYPE=relay
      - BEASTHOST=beasthost
      - BEASTPORT=30005
      - FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37
    tmpfs:
      - /run:exec,size=64M
      - /var/log

Example docker run with external Mode-S/BEAST provider and external UAT provider

This will currently only work in the United States of America, as they are the only country that uses ADS-B UAT on 978MHz.

An example of an external Mode-S/BEAST provider would be:

In the example below, it is assumed that the external BEAST provider resolves to beasthost and is listening for connections on TCP port 30005.

An example of an external UAT provider would be:

In the example below, it is assumed that the external UAT provider resolves to uathost and is listening for connections on TCP port 30978.

docker run \
 -d \
 --rm \
 --name piaware \
 -e TZ="Australia/Perth" \
 -e RECEIVER_TYPE=relay \
 -e BEASTHOST=beasthost \
 -e BEASTPORT=30005
 -e UAT_RECEIVER_TYPE=relay \
 -e UAT_RECEIVER_HOST=uathost \
 -e UAT_RECEIVER_PORT=30978 \
 -e FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37 \
 --tmpfs=/run:exec,size=64M \
 --tmpfs=/var/log \
 ghcr.io/sdr-enthusiasts/docker-piaware:latest

Example docker-compose.yml with external Mode-S/BEAST provider and external UAT provider

This will currently only work in the United States of America, as they are the only country that uses ADS-B UAT on 978MHz.

An example of an external Mode-S/BEAST provider would be:

In the example below, it is assumed that the external BEAST provider resolves to beasthost and is listening for connections on TCP port 30005.

An example of an external UAT provider would be:

In the example below, it is assumed that the external UAT provider resolves to uathost and is listening for connections on TCP port 30978.

version: "2.0"

services:
  piaware:
    image: ghcr.io/sdr-enthusiasts/docker-piaware:latest
    tty: true
    container_name: piaware
    restart: always
    environment:
      - TZ="Australia/Perth"
      - RECEIVER_TYPE=relay
      - BEASTHOST=beasthost
      - BEASTPORT=30005
      - UAT_RECEIVER_TYPE=relay
      - UAT_RECEIVER_HOST=uathost
      - UAT_RECEIVER_PORT=30978
      - FEEDER_ID=c478b1c99-23d3-4376-1f82-47352a28cg37
    tmpfs:
      - /run:exec,size=64M
      - /var/log

Environment Variables

For an explanation of piaware-config variables, see FlightAware PiAware Advanced Configuration.

General

Environment Variable Purpose Default
TZ Local timezone in "TZ database name" format. UTC
FEEDER_ID Your FlightAware feeder ID (required)
BINGMAPSAPIKEY Optional. Bing Maps API Key. If set, it is configured in dump1090's config.js.
VERBOSE_LOGGING Optional. Set to true for more verbose logs.

Multilateration

Environment Variable Possible Values Description Default
ALLOW_MLAT yes or no If yes, multilateration is enabled (also requires that receiver location is set on the FlightAware My ADS-B stats page) yes
MLAT_RESULTS yes or no If yes, multilateration results are returned to PiAware from FlightAware yes

Receiver Configuration (1090MHz)

Environment Variable Possible Values Description Default
ALLOW_MODEAC yes or no If yes, piaware and dump1090-fa will enable Mode A/C decoding if a client requests it.
Mode A/C decoding requires additional CPU when enabled. yes
RECEIVER_TYPE rtlsdr, relay Configures how PiAware attempts to talk to the ADS-B receiver rtlsdr

Receiver types:

  • rtlsdr - For FlightAware dongles and any other RTL-SDR
  • relay - For use with an external BEAST protocol provider running on another host (dump1090/readsb/etc)
  • bladerf/hackrf/limesdr/radarcape - Support for these is compiled in, but I need to complete the wrapperr scripts. I don't have access to these devices. If you do, and would be willing to test, please get in touch with me!

RTL-SDR Configuration (1090MHz)

Use only with RECEIVER_TYPE=rtlsdr.

Environment Variable Possible Values Description Default
RTLSDR_PPM a frequency correction in PPM Configures the dongle PPM correction 0
RTLSDR_GAIN max or a numeric gain level Optimizing gain (optional) -- See FlightAware -- Optimizing Gain max
DUMP1090_DEVICE rtlsdr device serial number Configures which dongle to use for 1090MHz reception if there is more than one connected first available device

Adaptive Gain Configuration (1090MHz)

The following settings control the adaptive gain configuration of dump1090 when using RECEIVER_TYPE=rtlsdr.

Environment Variable Possible Values Description Default
DUMP1090_ADAPTIVE_RANGE true or unset Set to any value to adjust gain for target dynamic range.
DUMP1090_ADAPTIVE_RANGE_TARGET A value in dB Set target dynamic range in dB.
DUMP1090_ADAPTIVE_BURST true or unset Set to any value to adjust gain for too-loud message bursts.
DUMP1090_ADAPTIVE_MIN_GAIN A value in dB Set gain adjustment range lower limit (dB).
DUMP1090_ADAPTIVE_MAX_GAIN A value in dB Set gain adjustment range upper limit (dB).
DUMP1090_ADAPTIVE_DUTY_CYCLE A percentage Set adaptive gain duty cycle % (1..100)
See Reducing the CPU cost of adaptive gain

Relay Configuration (1090MHz)

Use only with RECEIVER_TYPE=relay.

Environment Variable Possible Values Description Default
BEASTHOST a hostname or IP Specify an external BEAST protocol provider (dump1090/readsb/etc).
BEASTPORT a port number Specify the TCP port number of the external BEAST protocol provider. 30005
MLAT_RESULTS_BEASTHOST a hostname or IP Specify an external host where MLAT results should be sent.
MLAT_RESULTS_BEASTPORT a port number Specify the TCP port number where MLAT results should be sent. 30104

Receiver Configuration (978MHz)

Environment Variable Possible Values Description Default
UAT_RECEIVER_TYPE none, rtlsdr, relay Configures how PiAware attempts to talk to the ADS-B receiver none

Receiver types:

  • rtlsdr - For FlightAware dongles and any other RTL-SDR
  • relay - For use with an external BEAST protocol provider running on another host (dump1090/readsb/etc)
  • bladerf/hackrf/limesdr/radarcape - Support for these is compiled in, but I need to complete the wrapperr scripts. I don't have access to these devices. If you do, and would be willing to test, please get in touch with me!

RTL-SDR Configuration (978MHz)

Use only with UAT_RECEIVER_TYPE=rtlsdr.

Environment Variable Possible Values Description Default
DUMP978_DEVICE rtlsdr device serial number Configures which dongle to use for 978MHz reception if there is more than one connected first available device
UAT_SDR_GAIN max or a numeric gain level Optimizing gain (optional) -- See FlightAware -- Optimizing Gain max
UAT_SDR_PPM a frequency correction in PPM Configures the dongle PPM correction 0

Relay Configuration (978MHz)

Use only with UAT_RECEIVER_TYPE=relay.

Environment Variable Possible Values Description Default
UAT_RECEIVER_HOST a hostname or IP Specify an external UAT raw data provider (dump978-fa).
UAT_RECEIVER_PORT a port number Specify the TCP port number of the external UAT raw data provider. 30978

Ports

The following ports are used by this container:

  • 80 - PiAware Status page and dump1090 web interface (Skyaware) - optional but recommended so you can check status and and watch the planes fly around.
  • 30003 - dump1090 TCP BaseStation output listen port - optional, recommended to leave unmapped unless explicitly needed
  • 30005 - dump1090 TCP Beast output listen port - optional, recommended to leave unmapped unless explicitly needed
  • 30105 - If MLAT is enabled, mlat-client results published on this port in Beast format - optional, recommended to leave unmapped unless explicitly needed
  • 30978 - If UAT decoding is enabled, UAT raw data published on this port - optional, recommended to leave unmapped unless explicitly needed
  • 30979 - If UAT decoding is enabled, UAT decoded JSON published on this port - optional, recommended to leave unmapped unless explicitly needed

Claiming Your Receiver

Since version 3.8.0 the flightaware-user and flightaware-password configuration options are no longer used; please use the normal site-claiming mechanisms to associate sites with a FlightAware account.

FlightAware PiAware Claim

Logging

  • All processes are logged to the container's stdout, and can be viewed with docker logs [-f] container.
  • lighttpd (which provides SkyAware & SkyAware978) is configured to not log (except for a startup message on container start)

Other services to feed

Check out these other images here.

Getting help

Please feel free to open an issue on the project's GitHub.

We also have a Discord channel, feel free to join and converse.

docker-piaware's People

Contributors

bootc avatar bttnns avatar dependabot[bot] avatar dirkhh avatar easternpa avatar fredclausen avatar github-actions[bot] avatar kx1t avatar mikenye avatar rryder avatar shoginn avatar uhtredthebold avatar visibilityspots avatar wiedehopf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-piaware's Issues

No messages on ROCKPro64 (aarch64)

Hello! Thanks for your work on these great ADS-B images!

I have a working ADS-B setup (not in Docker) on a Pi 3B but I am looking to migrate my receiver to a ROCKPro64.

Everything appears to start up as expected (on both this image and the mikenye/readsb image), but there are 0.0 messages/sec in the PiAware GUI and likewise no decodings visible in the viewadsb tool.

I have tried all the USB ports (2xUSB2, 1xUSB3.0), to no avail. I also tried hooking the receiver up through a powered USB hub to eliminate potential power issues, no luck. Gain is left to the default.

Normally, even at the lowest times, I see ~50 messages/sec and as much as 200+. There are definitely planes in the area that I do properly decode if I move back to the Pi.

Please let me know how I can help!

Here is some debugging information:

lsb_release -a:

Distributor ID: Debian
Description:    Debian GNU/Linux 9.12 (stretch)
Release:        9.12
Codename:       stretch

uname -m: aarch64

lsusb:

...
Bus 003 Device 008: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
...

usb-devices, to show kernel module is properly blacklisted:

T:  Bus=03 Lev=02 Prnt=04 Port=01 Cnt=02 Dev#=  8 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0bda ProdID=2838 Rev=01.00
S:  Manufacturer=Realtek
S:  Product=RTL2838UHIDIR
S:  SerialNumber=00000001
C:  #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
I:  If#= 1 Alt= 0 #EPs= 0 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)

docker-compose :

version: '2.0'

services:
  piaware:
    image: mikenye/piaware:latest
    tty: true
    container_name: piaware
    restart: always
    devices:
      - /dev/bus/usb/003/008:/dev/bus/usb/003/008
    ports:
      - 8080:8080
      - 30003:30003
      - 30005:30005
    environment:
      - TZ="?"
      - LAT=?
      - LONG=?
      - FEEDER_ID=?

startup output:

Creating piaware ... done
Attaching to piaware
piaware    | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
piaware    | [s6-init] ensuring user provided files have correct perms...exited 0.
piaware    | [fix-attrs.d] applying ownership & permissions fixes...
piaware    | [fix-attrs.d] done.
piaware    | [cont-init.d] executing container initialization scripts...
piaware    | [cont-init.d] 01-piaware: executing...
piaware    | Set feeder-id to ? in /etc/piaware.conf:1
piaware    | Set allow-mlat to yes in /etc/piaware.conf:2
piaware    | Set allow-modeac to yes in /etc/piaware.conf:3
piaware    | Set allow-auto-updates to no in /etc/piaware.conf:4
piaware    | Set allow-manual-updates to no in /etc/piaware.conf:5
piaware    | [cont-init.d] 01-piaware: exited 0.
piaware    | [cont-init.d] done.
piaware    | [services.d] starting services
piaware    | [skyaware] 2020-04-14 12:35:06: (server.c.1521) server started (lighttpd/1.4.54)
piaware    | [services.d] done.
piaware    | [piaware] ****************************************************
piaware    | [piaware] piaware version 3.8.1 is running, process ID 254
piaware    | [piaware] your system info is: Linux 511f2048a9e1 4.4.190-1233-rockchip-ayufan-gd3f1be0ed310 #1 SMP Wed Aug 28 08:59:34 UTC 2019 aarch64 Linux
piaware    | [dump1090-fa] Tue Apr 14 12:35:06 2020 UTC  dump1090-fa  starting up.
piaware    | [dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
piaware    | [dump1090-fa] Found Rafael Micro R820T tuner
piaware    | [dump1090-fa] rtlsdr: enabling tuner AGC
piaware    | [dump1090-fa] Allocating 4 zero-copy buffers
piaware    | [piaware] Connecting to FlightAware adept server at piaware.flightaware.com/1200
piaware    | [piaware] Connection with adept server at piaware.flightaware.com/1200 established
piaware    | [piaware] TLS handshake with adept server at piaware.flightaware.com/1200 completed
piaware    | [piaware] FlightAware server certificate validated
piaware    | [piaware] encrypted session established with FlightAware                                                                 
piaware    | [piaware] adept reported location: ?, ?, ? AMSL  
piaware    | [piaware] Receiver location changed, restarting dump1090 and skyaware978                         
piaware    | [piaware] attempting to restart dump1090..            
piaware    | [piaware] attempting to restart dump1090 using '/etc/init.d/dump1090 restart < /dev/null &'...
piaware    | [piaware] dump1090 restart appears to have been successful                                   
piaware    | [piaware] attempting to restart skyaware978..                                   
piaware    | [piaware] can't restart skyaware978, no services that look like skyaware978 found
piaware    | [piaware] logged in to FlightAware as user ?                                       
piaware    | [piaware] my feeder ID is ?   
piaware    | [piaware] site statistics URL: https://flightaware.com/adsb/stats/user/?#stats-?            
piaware    | [piaware] multilateration data requested                  
piaware    | [dump1090-fa] Tue Apr 14 12:35:08 2020 UTC  Caught SIGTERM, shutting down..
piaware    | [dump1090-fa]
piaware    | [piaware] Starting multilateration client: /usr/lib/piaware/helpers/fa-mlat-client --input-connect localhost:30005 --input-type dump1090 --results beast,connect,localhost:30104 --results beast,listen,30105 --results ext_basestation,listen,30106 --udp-transport 70.42.6.228:8999:?
piaware    | [dump1090-fa] Tue Apr 14 12:35:08 2020 UTC  Waiting for receive thread termination                                                                                                                                                                                           
piaware    | [dump1090-fa]                                                                                                                                                                                                                                                                
piaware    | [dump1090-fa]                                                                                                                                                                                                                                                                
piaware    | [dump1090-fa] Statistics: Tue Apr 14 12:35:07 2020 UTC - Tue Apr 14 12:35:08 2020 UTC                                                                                                                                                                                        
piaware    | [dump1090-fa] Local receiver:                                                                                                                                                                                                                                                
piaware    | [dump1090-fa]   3670016 samples processed                                                                                                                                                                                                                                    
piaware    | [dump1090-fa]   0 samples dropped                                                                                                                                                                                                                                            
piaware    | [dump1090-fa]   0 Mode A/C messages received                                                                                                                                                                                                                                 
piaware    | [dump1090-fa]   0 Mode-S message preambles received                                                                                                                                                                                                                          
piaware    | [dump1090-fa]     0 with bad message format or invalid CRC                                                                                                                                                                                                                   
piaware    | [dump1090-fa]     0 with unrecognized ICAO address
piaware    | [dump1090-fa]     0 accepted with correct CRC
piaware    | [dump1090-fa]     0 accepted with 1-bit error repaired
piaware    | [dump1090-fa]   -0.3 dBFS noise power
piaware    | [dump1090-fa]   0 messages with signal power above -3dBFS
piaware    | [dump1090-fa] Messages from network clients:
piaware    | [dump1090-fa]   0 Mode A/C messages received
piaware    | [dump1090-fa]   0 Mode S messages received
piaware    | [dump1090-fa]     0 with bad message format or invalid CRC
piaware    | [dump1090-fa]     0 with unrecognized ICAO address
piaware    | [dump1090-fa]     0 accepted with correct CRC
piaware    | [dump1090-fa]     0 accepted with 1-bit error repaired
piaware    | [dump1090-fa] 0 total usable messages
piaware    | [dump1090-fa] 0 surface position messages received
piaware    | [dump1090-fa] 0 airborne position messages received
piaware    | [dump1090-fa] 0 global CPR attempts with valid positions
piaware    | [dump1090-fa] 0 global CPR attempts with bad data
piaware    | [dump1090-fa]   0 global CPR attempts that failed the range check
piaware    | [dump1090-fa]   0 global CPR attempts that failed the speed check
piaware    | [dump1090-fa] 0 global CPR attempts with insufficient data
piaware    | [dump1090-fa] 0 local CPR attempts with valid positions
piaware    | [dump1090-fa]   0 aircraft-relative positions
piaware    | [dump1090-fa]   0 receiver-relative positions
piaware    | [dump1090-fa] 0 local CPR attempts that did not produce useful positions
piaware    | [dump1090-fa]   0 local CPR attempts that failed the range check
piaware    | [dump1090-fa]   0 local CPR attempts that failed the speed check
piaware    | [dump1090-fa] 0 CPR messages that look like transponder failures filtered
piaware    | [dump1090-fa] 0 non-ES altitude messages from ES-equipped aircraft ignored
piaware    | [dump1090-fa] 0 unique aircraft tracks
piaware    | [dump1090-fa] 0 aircraft tracks where only one message was seen
piaware    | [dump1090-fa] 0 aircraft tracks which were not marked reliable
piaware    | [dump1090-fa] CPU load: 10.9%
piaware    | [dump1090-fa]   92 ms for demodulation
piaware    | [dump1090-fa]   63 ms for reading from USB
piaware    | [dump1090-fa]   12 ms for network input and background tasks
piaware    | [dump1090-fa] Tue Apr 14 12:35:08 2020 UTC  Normal exit.
piaware    | [piaware] mlat-client(292): fa-mlat-client 0.2.11 starting up
piaware    | [piaware] mlat-client(292): Using UDP transport to 70.42.6.228 port 8999
piaware    | [piaware] mlat-client(292): Listening for Beast-format results connection on port 30105
piaware    | [piaware] mlat-client(292): Listening for Extended Basestation-format results connection on port 30106
piaware    | [piaware] mlat-client(292): Route MTU changed to 1500
piaware    | [piaware] mlat-client(292): Connection to localhost:30005 lost: [Errno 111] Connection refused
piaware    | [piaware] mlat-client(292): Reconnecting in 0.5 seconds
piaware    | [dump1090-fa] Tue Apr 14 12:35:08 2020 UTC  dump1090-fa  starting up.
piaware    | [dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
piaware    | [dump1090-fa] Found Rafael Micro R820T tuner
piaware    | [dump1090-fa] rtlsdr: enabling tuner AGC
piaware    | [piaware] no ADS-B data program seen listening on port 30005 for 3 seconds, next check in 60s
piaware    | [piaware] UAT support disabled by local configuration setting: uat-receiver-type
piaware    | [dump1090-fa] Allocating 4 zero-copy buffers
piaware    | [piaware] mlat-client(292): Connection to localhost:30005 failed: [Errno 99] EADDRNOTAVAIL
piaware    | [piaware] mlat-client(292): Reconnecting in 30.0 seconds
piaware    | [piaware] mlat-client(292): Beast-format results connection with 127.0.0.1:30104: connection established
piaware    | [piaware] mlat-client(292): Input connected to localhost:30005
piaware    | [piaware] mlat-client(292): Input format changed to BEAST, 12MHz clock
piaware    | [piaware] 0 msgs recv'd from dump1090; 0 msgs sent to FlightAware
piaware    | [piaware] ADS-B data program 'dump1090' is listening on port 30005, so far so good
piaware    | [piaware] Starting faup1090: /usr/lib/piaware/helpers/faup1090 --net-bo-ipaddr localhost --net-bo-port 30005 --stdout --lat ? --lon ?
piaware    | [piaware] Started faup1090 (pid 315) to connect to dump1090

example statistics output after I left it running for a few hours:

piaware    | [dump1090-fa] Statistics: Tue Apr 14 07:33:50 2020 UTC - Tue Apr 14 08:33:50 2020 UTC                   
piaware    | [dump1090-fa] Local receiver:                                                                                                                   
piaware    | [dump1090-fa]   8619032576 samples processed                                               
piaware    | [dump1090-fa]   21102592 samples dropped                                                                                                        
piaware    | [dump1090-fa]   0 Mode A/C messages received                                                                                                                                                                                                  
piaware    | [dump1090-fa]   213708 Mode-S message preambles received                                                        
piaware    | [dump1090-fa]     65756 with bad message format or invalid CRC                                      
piaware    | [dump1090-fa]     147952 with unrecognized ICAO address                                                                                                                     
piaware    | [dump1090-fa]     0 accepted with correct CRC                                                                                                                                                                                          
piaware    | [dump1090-fa]     0 accepted with 1-bit error repaired                                                                                                                      
piaware    | [dump1090-fa]   -0.4 dBFS noise power                                                         
piaware    | [dump1090-fa]   0 messages with signal power above -3dBFS                                                       
piaware    | [dump1090-fa] Messages from network clients:                                                  
piaware    | [dump1090-fa]   58 Mode A/C messages received                                                                   
piaware    | [dump1090-fa]   0 Mode S messages received                                                                      
piaware    | [dump1090-fa]     0 with bad message format or invalid CRC                      
piaware    | [dump1090-fa]     0 with unrecognized ICAO address                                
piaware    | [dump1090-fa]     0 accepted with correct CRC                                                                                                   
piaware    | [dump1090-fa]     0 accepted with 1-bit error repaired                                                                                                                      
piaware    | [dump1090-fa] 58 total usable messages
piaware    | [dump1090-fa] 0 surface position messages received                                                  
piaware    | [dump1090-fa] 0 airborne position messages received
piaware    | [dump1090-fa] 0 global CPR attempts with valid positions
piaware    | [dump1090-fa] 0 global CPR attempts with bad data
piaware    | [dump1090-fa]   0 global CPR attempts that failed the range check
piaware    | [dump1090-fa]   0 global CPR attempts that failed the speed check
piaware    | [dump1090-fa] 0 global CPR attempts with insufficient data
piaware    | [dump1090-fa] 0 local CPR attempts with valid positions
piaware    | [dump1090-fa]   0 aircraft-relative positions
piaware    | [dump1090-fa]   0 receiver-relative positions
piaware    | [dump1090-fa] 0 local CPR attempts that did not produce useful positions
piaware    | [dump1090-fa]   0 local CPR attempts that failed the range check
piaware    | [dump1090-fa]   0 local CPR attempts that failed the speed check
piaware    | [dump1090-fa] 0 CPR messages that look like transponder failures filtered
piaware    | [dump1090-fa] 0 non-ES altitude messages from ES-equipped aircraft ignored
piaware    | [dump1090-fa] 0 unique aircraft tracks
piaware    | [dump1090-fa] 0 aircraft tracks where only one message was seen
piaware    | [dump1090-fa] 0 aircraft tracks which were not marked reliable
piaware    | [dump1090-fa] CPU load: 10.7%
piaware    | [dump1090-fa]   211025 ms for demodulation
piaware    | [dump1090-fa]   144801 ms for reading from USB
piaware    | [dump1090-fa]   30267 ms for network input and background tasks
piaware    | [piaware] 0 msgs recv'd from dump1090 (0 in last 5m); 0 msgs sent to FlightAware
piaware    | [piaware] no new messages received in 3889 seconds, it might just be that there haven't been any aircraft nearby but I'm going to try to restart everything, just in case...

dump1090 coredumps in amd64 image

I am trying to run the latest image in relay mode, but I am running into the following issue:

piaware               | [piaware] 2021/04/12 07:59:13 piaware version 5.0 is running, process ID 333
piaware               | [piaware] 2021/04/12 07:59:13 your system info is: Linux 0628bd400100 5.9.0-0.bpo.2-amd64 #1 SMP Debian 5.9.6-1~bpo10+1 (2020-11-19) x86_64 GNU/Linux
piaware               | ./run: line 48:   354 Illegal instruction     (core dumped) "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
piaware               |        355 Done                    | stdbuf -o0 awk '{print "[dump1090] " strftime("%Y/%m/%d %H:%M:%S", systime()) " " $0}'

My relevant part of docker-compose.yml:

piaware:
    #image: mikenye/piaware:latest_i386
    image: mikenye/piaware:latest
    tty: true
    container_name: piaware
    restart: always
    networks:
      - adsbnet
    environment:
      - TZ="Europe/Berlin"
      - LAT=xxx
      - LONG=xxx
      - RECEIVER_TYPE=relay
      - BEASTHOST=readsb
      - BEASTPORT=30005
      - FEEDER_ID=xxx
    tmpfs:
      - /run:exec,size=64M
      - /var/log

It works flawlessly if I change to the i386 image.

My system is

Linux 5.9.0-0.bpo.2-amd64 #1 SMP Debian 5.9.6-1~bpo10+1 (2020-11-19) x86_64 GNU/Linux

Start automatically

I can use docker run to create and start the container and the device checks in. When I restart the device I have to manually restart it. Is there a way for it to start automatically?

container unhealthy possible issue with beast-splitter

Hi,

Setup: dump1090 beast on a different host

pi4: running mikenye/adsbexchange mikenye/planefinder and docker-piware

mikenye/adsbexchange and mikenye/planefinder reports aircrafts with no issues (which means no connection issues etc)

docker-piaware enters unhealthy status almost everyday last messages are like the following:

[piaware] 2022/01/03 23:20:15 no new messages received in 3888 seconds, it might just be that there haven't been any aircraft nearby but I'm going to try to restart everything, just in case...
[piaware] 2022/01/03 23:20:16 faup1090 exited with SIG SIGHUP
[piaware] 2022/01/03 23:20:16 attempting to restart beast-splitter..
[piaware] 2022/01/03 23:20:16 can't restart beast-splitter, no services that look like beast-splitter found

Following the last message you need to restart the connection and data continues to be send

RTLSDR_PPM value not picked up

I have set the RTLSDR_PPM value in de docker.yml file. If I check the code, in etc/services.d/dump1090/run there is a line: RTLSDR_PPM="$(piaware-config -show rtlsdr-ppm)"
But RTLSDR_PPM is not set to piaware-config. Hence the value is always 0.

Or am I missing something?

build failing due to upstream dump1090 changes

The public_html_merged folder has been removed in the upstream repo so the build now fails. Fixing this might be as easy as removing the cp for that folder from the Dockerfile, but I don't use the web features so that might break features.

Missing MLAT data on FlightAware

Hello,

I have an issue with docker-piaware and MLAT. I've configured my location on FA website and followed the instruction, but I'm unable to send MLAT data while other integrations are working (ex. RadarBox).

image

The current setup is: remote host with RTL-SDR dongle+antenna with readsb >>> other host with readsb and all integrations >>> feeding data.

My docker-compose on the host providing the data to feeds:

  readsb:
    image: ghcr.io/sdr-enthusiasts/docker-readsb-protobuf:latest
    tty: true
    container_name: readsb
    hostname: readsb
    restart: always
    ports:
      - 18082:8080
      - 30005:30005
    environment:
      - TZ=${FEEDER_TZ}
      - READSB_STATS_RANGE=true
      - READSB_NET_ENABLE=true
      - READSB_NET_CONNECTOR=neptune.fritz.box,30005,beast_in
      - READSB_NET_ONLY=true
    volumes:
      - readsbpb_rrd:/run/collectd
      - readsbpb_autogain:/run/autogain
    tmpfs:
      - /run/readsb
      - /var/log
      - 
#######

  piaware:
    image: ghcr.io/sdr-enthusiasts/docker-piaware:latest
    tty: true
    container_name: piaware
    restart: always
    depends_on:
      - readsb
    ports:
      - 18083:8080
    environment:
      - BEASTHOST=readsb
      - LAT=${FEEDER_LAT}
      - LONG=${FEEDER_LONG}
      - TZ=${FEEDER_TZ}
      - FEEDER_ID=${PIAWARE_FEEDER_ID}
      - ALLOW_MLAT=yes
      - MLAT_RESULTS=yes
    tmpfs:
      - /run:exec,size=64M
      - /var/log

PiAware logs:

docker logs piaware -f | grep -i mlat
Set allow-mlat to yes in /etc/piaware.conf:4
Set mlat-results to yes in /etc/piaware.conf:5
[piaware] 2023/01/02 18:05:46 Starting multilateration client: /usr/lib/piaware/helpers/fa-mlat-client --input-connect localhost:30005 --input-type auto --results beast,connect,localhost:30104 --results beast,listen,30105 --results ext_basestation,listen,30106 --udp-transport 206.253.84.194:13588:2613707405
[piaware] 2023/01/02 18:05:46 mlat-client(365): fa-mlat-client 0.2.12 starting up
[piaware] 2023/01/02 18:05:46 mlat-client(365): Using UDP transport to 206.253.84.194 port 13588
[piaware] 2023/01/02 18:05:46 mlat-client(365): Listening for Beast-format results connection on port 30105
[piaware] 2023/01/02 18:05:46 mlat-client(365): Listening for Extended Basestation-format results connection on port 30106
[piaware] 2023/01/02 18:05:46 mlat-client(365): Route MTU changed to 1500
[piaware] 2023/01/02 18:05:46 mlat-client(365): Input connected to localhost:30005
[piaware] 2023/01/02 18:05:47 mlat-client(365): Beast-format results connection with 127.0.0.1:30104: connection established
[piaware] 2023/01/02 18:05:51 mlat-client(365): Beast-format results connection with 127.0.0.1:30104: connection lost
[piaware] 2023/01/02 18:05:51 mlat-client(365): Lost connection to localhost:30005
[piaware] 2023/01/02 18:05:51 mlat-client(365): Reconnecting in 30.0 seconds
[piaware] 2023/01/02 18:06:21 mlat-client(365): Beast-format results connection with ::1:30104: [Errno 99] EADDRNOTAVAIL
[piaware] 2023/01/02 18:06:21 mlat-client(365): Input connected to localhost:30005
[piaware] 2023/01/02 18:06:43 mlat-client(365): Detected BEAST format input
[piaware] 2023/01/02 18:06:43 mlat-client(365): Input format changed to BEAST, 12MHz clock
[piaware] 2023/01/02 18:06:51 mlat-client(365): Beast-format results connection with 127.0.0.1:30104: connection established

docker-compose on the host using the RTL-SDR:

services:
  readsb:
    image: ghcr.io/sdr-enthusiasts/docker-readsb-protobuf:latest
    tty: true
    container_name: readsb
    hostname: readsb
    restart: always
    devices:
      - /dev/bus/usb:/dev/bus/usb
    ports:
      - 8080:8080
      - 30005:30005
    environment:
      - TZ=${FEEDER_TZ}
      - READSB_DEVICE_TYPE=rtlsdr
      - READSB_RTLSDR_DEVICE=1090
      - READSB_GAIN=autogain
      - READSB_LAT=${FEEDER_LAT}
      - READSB_LON=${FEEDER_LONG}
      - READSB_RX_LOCATION_ACCURACY=2
      - READSB_STATS_RANGE=true
      - READSB_NET_ENABLE=true
      - DISABLE_WEBAPP=true
      - DISABLE_PERFORMANCE_GRAPHS=true
      - READSB_DCFILTER=true
      - READSB_FIX=true
    volumes:
      - readsbpb_rrd:/run/collectd
      - readsbpb_autogain:/run/autogain
    tmpfs:
      - /run/readsb
      - /var/log

Any hint?

Thank you!

AttributeError: 'AdeptConnection' object has no attribute 'send_clock_jump'

I periodically see an exception running the latest image with piaware 8.2. Looks like a module version mismatch? I could not find any issue on piaware's repo. Here are my Docker logs:

[piaware] 2023/10/21 19:06:07 mlat-client(174): outlier detected with ts: 6269.091, last_ts: 6269.063, ts_elapsed: 0.027, sys_elapsed: 1.503 (values in seconds)
[piaware] 2023/10/21 19:06:07 mlat-client(174): Unexpected exception on connection to localhost:30005
[piaware] 2023/10/21 19:06:07 mlat-client(174): Traceback (most recent call last):
[piaware] 2023/10/21 19:06:07 mlat-client(174): File "/usr/lib/python3.11/asyncore.py", line 88, in read
[piaware] 2023/10/21 19:06:07 mlat-client(174): obj.handle_read_event()
[piaware] 2023/10/21 19:06:07 mlat-client(174): File "/usr/lib/python3.11/asyncore.py", line 425, in handle_read_event
[piaware] 2023/10/21 19:06:07 mlat-client(174): self.handle_read()
[piaware] 2023/10/21 19:06:07 mlat-client(174): File "/usr/local/lib/python3.11/dist-packages/MlatClient-0.4.2-py3.11-linux-x86_64.egg/mlat/client/receiver.py", line 214, in handle_read
[piaware] 2023/10/21 19:06:07 mlat-client(174): self.coordinator.input_received_messages(messages)
[piaware] 2023/10/21 19:06:07 mlat-client(174): File "/usr/local/lib/python3.11/dist-packages/MlatClient-0.4.2-py3.11-linux-x86_64.egg/mlat/client/coordinator.py", line 328, in input_received_messages
[piaware] 2023/10/21 19:06:07 mlat-client(174): handler(message, now)
[piaware] 2023/10/21 19:06:07 mlat-client(174): File "/usr/local/lib/python3.11/dist-packages/MlatClient-0.4.2-py3.11-linux-x86_64.egg/mlat/client/coordinator.py", line 350, in received_timestamp_jump_event
[piaware] 2023/10/21 19:06:07 mlat-client(174): self.server.send_clock_jump()
[piaware] 2023/10/21 19:06:07 mlat-client(174): ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[piaware] 2023/10/21 19:06:07 mlat-client(174): AttributeError: 'AdeptConnection' object has no attribute 'send_clock_jump'
[piaware] 2023/10/21 19:06:07 mlat-client(174): Lost connection to localhost:30005

Log messages do not contain a timestamp

Hello,

I like your image and it makes it very easy to setup a feeder for FlightAware. I'm using a docker-compose setup which makes it even more easier to maintain for me. However, when I look at the output from docker-compose logs, I do not see any timestamps. Is it possible to change that somewhere or is it an issue of the piaware software itself? Please see my log for reference:

user1@server1:/opt/docker-piaware$ docker-compose logs --tail=5
Attaching to piaware
piaware | [piaware] 268 msgs recv'd from dump1090 (78 in last 5m); 268 msgs sent to FlightAware
piaware | [piaware] 292 msgs recv'd from dump1090 (24 in last 5m); 292 msgs sent to FlightAware
piaware | [piaware] 319 msgs recv'd from dump1090 (27 in last 5m); 319 msgs sent to FlightAware
piaware | [piaware] 324 msgs recv'd from dump1090 (5 in last 5m); 324 msgs sent to FlightAware
piaware | [piaware] 407 msgs recv'd from dump1090 (83 in last 5m); 407 msgs sent to FlightAware
user1@server1:/opt/docker-piaware$

Best regards

Jens

Add `HEALTHCHECK` to recover from dump1090 failures

Issue

I seem to have a slightly unreliable SDR (or perhaps pi/power supply). Once every week or two, the USB device disconnects and promptly reconnects. This can be seen in dmesg:

[2413977.098905] usb 1-1.1: USB disconnect, device number 19
[2413977.393225] usb 1-1.1: new high-speed USB device number 20 using xhci_hcd
[2413977.534938] usb 1-1.1: New USB device found, idVendor=0bda, idProduct=2832, bcdDevice= 1.00
[2413977.534945] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[2413977.534951] usb 1-1.1: Product: RTL2832U
[2413977.534956] usb 1-1.1: Manufacturer: Realtek
[2413977.534961] usb 1-1.1: SerialNumber: 00001000

This seems to leave dump1090 in a bad state, in a loop like this:

$ docker logs -t --tail 5 piaware
2020-06-01T02:59:53.483919157Z [dump1090-fa] rtlsdr: error querying device #0: No such file or directory
2020-06-01T02:59:54.436927358Z [dump1090-fa] Mon Jun  1 02:59:54 2020 UTC  dump1090-fa  starting up.
2020-06-01T02:59:54.456436933Z [dump1090-fa] rtlsdr: error querying device #0: No such file or directory
2020-06-01T02:59:55.460161178Z [dump1090-fa] Mon Jun  1 02:59:55 2020 UTC  dump1090-fa  starting up.
2020-06-01T02:59:55.479666569Z [dump1090-fa] rtlsdr: error querying device #0: No such file or directory

Bouncing the container, i.e. docker-compose restart, does the trick every time.

Possible solutions

No question to me this is a bug in dump1090's device management, i.e. not reinitializing/re-probing after the disconnect or otherwise grabbing a handle to the 'new' device. But I don't have any familiarity with that code..

As a blunt instrument, we could instead add a Docker HEALTHCHECK directive in order to cause docker to detect and restart the unhealthy container.

One idea would be to run & parse the piaware-status status command. Looks like it detects both conditions:

Unhealthy state:

$ docker exec -i -t piaware /bin/sh -c 'piaware-status | egrep ^dump1090'
dump1090 is NOT producing data on localhost:30005.

Healthy:

$ docker exec -i -t piaware /bin/sh -c 'piaware-status | egrep ^dump1090'
dump1090 (pid 269) is listening for ES connections on port 30005.
dump1090 is producing data on localhost:30005.

I started down the road of putting together a PR, but realized I don't know enough how to do this correctly/without breaking other setups (eg whether any of the other stuff in piaware-status is relevant). Let me know what you think!

Exec format error when running container on Raspberry Pi 3B

I'm getting the exec format error in the logs when attempting to run the latest tag on my Raspberry Pi 3B.

$ uname -a
Linux raspberrypi 4.19.66-v7+ #1253 SMP Thu Aug 15 11:49:46 BST 2019 armv7l GNU/Linux

latest tag runs fine on my Atomic Pi (x86_64), so there seems to be something amiss with the way the arch gets detected.

I was able to build the image myself on the Pi 3B and it works great.

Dockerfile mlat reference incorrect

Dockerfile, line 149 states:

ln -s /usr/bin/fa-mlat-client /usr/lib/piaware/helpers/ && \

however, this should be:

ln -s /usr/local/bin/fa-mlat-client /usr/lib/piaware/helpers/ && \

to get MLAT working

PiAware v6.0 adaptive gain

(The release announcement email barely came out and you already updated the docker images, amazing!)

One of the highlights of the v6 release seems to be the adaptive gain.

What would be the easiest way to try it out with the docker image?

realtime clock inaccessible on v7.1 image

Hi Mike,

it seems there is an issue with the recent v7.1 image and access to the system time after upgrading my piaware image to the "latest" tag.

The piaware container throws a lot of these errors and CPU load is incredibly high:
sleep: cannot read realtime clock: Operation not permitted

WHen reverting to the docker hub tag / image mikenye/piaware:v6.1 the error message goes away and CPU load is back to normal again.

I am running the container in a docker stack, these are my settings from the stack compose file:

piaware:
image: mikenye/piaware:latest
tty: true
container_name: PiAware
hostname: piaware
restart: always
environment:
- TZ=Europe/Berlin
- LAT=53.68030
- LONG=10.03456
- FEEDER_ID=REMOVED FOR GITHUB
- RECEIVER_TYPE=rtlsdr
- BEASTHOST=adsb_rcvr_ham
- BEASTPORT=30005
- VERBOSE_LOGGING=false
- ALLOW_MODEAC=yes
networks:
- ADSB
healthcheck:
disable: true
tmpfs:
- /run:exec,size=64M
- /var/log

-
I know the indentation of the YAML somehow got lost here on github, but I got it right on my docker env.
Let me know if you need anything else.

Running the container in privileged mode seems to be a possible solution as per the web, but this is not supported when running in Stack as far as I know and with the v6.1 image it works flawlessly, hence I reverted back to that version for my prod setup.

Issues with setting up external adsb receiver

Hi, I have dump1090 (not dump1090fa) running on the host, exposing its interface to 0.0.0.0:30002
Installed this container with

extra_hosts:
  - "host.docker.internal:host-gateway"
 environment:
  - BEASTHOST=host.docker.internal
  - BEASTPORT=30002
  - RECEIVER_TYPE=relay

Which makes the feed available on host host.docker.internal:30002
However piaware does not ingest, writing "framing errors seen, is the peer sending Beast binary data?" to the log.
I assume faupload1090 (gets mentioned in the logs, unfortunately not at all documented) would need to be reconfigured to connect to my receiver.

Does anyone have experience with this kind of issue?
Feeds for fr24 and adsbx run flawlessly

Suggestion: redirect directly to FlightAware user statistics page

When clicking on the FlightAware logo on the top left, you are redirected to the FlightAware home page. It's a lot easier when you are directly redirected to your personal statistics page. When running locally, I was using the following patch:

--- /usr/share/dump1090-fa/html/index.html	2019-08-01 10:33:43.000000000 +0200
+++ /usr/share/dump1090-fa/html/index.html	2019-08-13 22:47:39.299981896 +0200
@@ -48,7 +48,7 @@
 
 		<div id="header" class="infoHeading">
 			<div class="logoContainer">
-				<a href="http://flightaware.com/" target="_blank"><img src="images/fa_logo_color.png" alt="FlightAware" class="flightawareLogo" srcset="images/fa_logo_color.png 1x, images/[email protected] 2x, images/[email protected] 3x"></a>
+				<a href="https://flightaware.com/adsb/stats/user/xxxxxxxxxxxxx" target="_blank"><img src="images/fa_logo_color.png" alt="FlightAware" class="flightawareLogo" srcset="images/fa_logo_color.png 1x, images/[email protected] 2x, images/[email protected] 3x"></a>
 				<img src="images/pa-sa-logo.png" alt="PiAware SkyAware" class="adsbLogo piAwareLogo" srcset="images/pa-sa-logo.png 1x, images/[email protected] 2x, images/[email protected] 3x">
 				<img src="images/ff-sa-logo.png" alt="FlightFeeder SkyAware" class="adsbLogo flightfeederLogo" srcset="images/ff-sa-logo.png 1x, images/[email protected] 2x, images/[email protected] 3x" style="display: none;">
 			</div>

Is it possible to implement this, probably using an runtime environment variable on this image?

Another request: add BING api key to the runtime environment variables.

Support for arm64/v8 (aarch64)

Any plans to build this for Pi 3B+?

docker: no matching manifest for linux/arm64/v8 in the manifest list entries.

ubuntu@dockerpi:~$ uname -a
Linux dockerpi 4.15.0-1038-raspi2 #40-Ubuntu SMP PREEMPT Thu Jun 6 07:33:02 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux

Add support for MLAT_RESULTS_ANON

YipYup :
"Does the sdr-enthusiasts/docker-piaware support MLAT_RESULTS_ANON ? Just looking through the official config file options for piaware at https://flightaware.com/adsb/piaware/advanced_configuration
I'm interested in using them if possible to send to my mlathub instance, and having them show there."

@kx1t :
"I don’t think it does, but if you want to open an Issue on the docker-piaware repo, I’ll be happy to add that for you tomorrow"

PiAware v4.0

Hi there, not really an issue but more of a request. Will you be updating this to support v4 of PiAware?

Incorrect Feeder ID Being Used

As of around 8:15am EDT, my PiAware container stopped supplying data to my correct FlightAware feeder ID. I do have watchtower performing auto-updates to the containers. No config changes have been made recently and all other feeders are functioning nominally. Environment variables and logs from piaware are below. Please let me know if I can provide any other information that might be helpful - and thank you in advance!

FEEDER_ALT_FT=1730
FEEDER_ALT_M=527
FEEDER_LAT=36.<redacted>
FEEDER_LONG=-82.<redacted>
FEEDER_TZ=America/New_York
ADSBX_UUID=<redacted>
ADSBX_SITENAME=jguinn-johnson_city_1
PIAWARE_FEEDER_ID=<redacted>
FR24_SHARING_KEY=<redacted>
FR24_RADAR_ID=T-KTRI17
PLANEFINDER_SHARECODE=<redacted>
RADARBOX_SHARING_KEY=<redacted>
DUMP1090_DEVICE=1090
piaware       | [978json-splitter] 2022/03/28 19:11:36 2022/03/28 19:11:36 socat[353] N socket 1 (fd 6) is at EOF
piaware       | [978json-splitter] 2022/03/28 19:11:36 2022/03/28 19:11:36 socat[353] N exiting with status 0
piaware       | [978json-splitter] 2022/03/28 19:11:36 2022/03/28 19:11:36 socat[330] N childdied(): handling signal 17
piaware       | [beast-splitter] 2022/03/28 19:11:37 net(readsb:30005): i/o error: End of file
piaware       | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
piaware       | [s6-init] ensuring user provided files have correct perms...exited 0.
piaware       | [fix-attrs.d] applying ownership & permissions fixes...
piaware       | [fix-attrs.d] done.
piaware       | [cont-init.d] executing container initialization scripts...
piaware       | [cont-init.d] 00-libsecomp2: executing... 
piaware       | [cont-init.d] 00-libsecomp2: exited 0.piaware       | [978json-splitter] 2022/03/28 19:11:36 2022/03/28 19:11:36 socat[353] N socket 1 (fd 6) is at EOF
piaware       | [978json-splitter] 2022/03/28 19:11:36 2022/03/28 19:11:36 socat[353] N exiting with status 0
piaware       | [978json-splitter] 2022/03/28 19:11:36 2022/03/28 19:11:36 socat[330] N childdied(): handling signal 17
piaware       | [beast-splitter] 2022/03/28 19:11:37 net(readsb:30005): i/o error: End of file
piaware       | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
piaware       | [s6-init] ensuring user provided files have correct perms...exited 0.
piaware       | [fix-attrs.d] applying ownership & permissions fixes...
piaware       | [fix-attrs.d] done.
piaware       | [cont-init.d] executing container ini
piaware       | [cont-init.d] 01-piaware: executing... 
piaware       | Set feeder-id to <redacted> in /etc/piaware.conf:1
piaware       | warning: could not set option 'allow-auto-updates' to value 'no': cannot update option allow-auto-updates as all config files are read-only
piaware       | warning: could not set option 'allow-manual-updates' to value 'no': cannot update option allow-manual-updates as all config files are read-only
piaware       | warning: could not set option 'allow-mlat' to value 'yes': cannot update option allow-mlat as all config files are read-only
piaware       | warning: could not set option 'mlat-results' to value 'yes': cannot update option mlat-results as all config files are read-only
piaware       | warning: could not set option 'receiver-type' to value 'relay': cannot update option receiver-type as all config files are read-only
piaware       | warning: could not set option 'receiver-host' to value 'readsb': cannot update option receiver-host as all config files are read-only
piaware       | warning: could not set option 'receiver-port' to value '30005': cannot update option receiver-port as all config files are read-only
piaware       | warning: could not set option 'uat-receiver-type' to value 'sdr': cannot update option uat-receiver-type as all config files are read-only
piaware       | warning: could not set option 'uat-receiver-host' to value 'dump978': cannot update option uat-receiver-host as all config files are read-only
piaware       | warning: could not set option 'uat-receiver-port' to value '30978': cannot update option uat-receiver-port as all config files are read-only
piaware       | [cont-init.d] 01-piaware: exited 0.
piaware       | [cont-init.d] done.
piaware       | [services.d] starting services
piaware       | [services.d] done.
piaware       | [beast-splitter] 2022/03/28 19:12:15 127.0.0.1:30004: connection to 127.0.0.1:30004 failed: Connection refused
piaware       | [beast-splitter] 2022/03/28 19:12:15 127.0.0.1:30004: reconnecting in 60 seconds
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[339] W ioctl(5, IOCTL_VM_SOCKETS_GET_LOCAL_CID, ...): Inappropriate ioctl for device
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[339] N listening on AF=2 0.0.0.0:30978
piaware       | [beast-splitter] 2022/03/28 19:12:15 net(readsb:30005): connected to 172.18.0.8:30005
piaware       | [beast-splitter] 2022/03/28 19:12:15 net(readsb:30005): configured with settings: BCDfgIjk
piaware       | [skyaware978] 2022/03/28 19:12:15 Connecting to 127.0.0.1:30978
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[339] N accepting connection from AF=2 127.0.0.1:34574 on AF=2 127.0.0.1:30978
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[339] N forked off child process 354
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[339] N listening on AF=2 0.0.0.0:30978
piaware       | [skyaware978] 2022/03/28 19:12:15 Connected to 127.0.0.1:30978
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[354] N opening connection to AF=2 172.18.0.9:30978
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[354] N successfully connected from local address AF=2 172.18.0.10:47652
piaware       | [978json-splitter] 2022/03/28 19:12:15 2022/03/28 19:12:15 socat[354] N starting data transfer loop with FDs [6,6] and [5,5]
piaware       | [dump1090] 2022/03/28 19:12:16 Mon Mar 28 19:12:16 2022 EDT  dump1090-fa v7.2 starting up.
piaware       | [skyaware] 2022/03/28 19:12:16 2022-03-28 19:12:15: server.c.1513) server started (lighttpd/1.4.59)
piaware       | [dump1090] 2022/03/28 19:12:16 Net-only mode, no SDR device or file open.
piaware       | [piaware] 2022/03/28 19:12:16 ****************************************************
piaware       | [piaware] 2022/03/28 19:12:16 piaware version 7.2 is running, process ID 329
piaware       | [piaware] 2022/03/28 19:12:16 your system info is: Linux 0cff2f7166c9 5.10.103-v8+ #1530 SMP PREEMPT Tue Mar 8 13:06:35 GMT 2022 aarch64 GNU/Linux
piaware       | [piaware] 2022/03/28 19:12:17 Connecting to FlightAware adept server at piaware.flightaware.com/1200
piaware       | [beast-splitter] 2022/03/28 19:12:18 net(readsb:30005): connected to a Beast-style receiver
piaware       | [piaware] 2022/03/28 19:12:27 Connection to adept server at piaware.flightaware.com/1200 failed: couldn't open socket: Temporary failure in name resolution
piaware       | [piaware] 2022/03/28 19:12:27 reconnecting in 6 seconds...
piaware       | [piaware] 2022/03/28 19:12:27 ADS-B data program 'dump1090' is listening on port 30005, so far so good
piaware       | [piaware] 2022/03/28 19:12:27 Starting faup1090: /usr/lib/piaware/helpers/faup1090 --net-bo-ipaddr localhost --net-bo-port 30005 --stdout
piaware       | [piaware] 2022/03/28 19:12:27 Started faup1090 (pid 358) to connect to dump1090
piaware       | [piaware] 2022/03/28 19:12:27 UAT support disabled by local configuration setting: uat-receiver-type
piaware       | [piaware] 2022/03/28 19:12:33 Connecting to FlightAware adept server at piaware.flightaware.com/1200
piaware       | [piaware] 2022/03/28 19:12:34 Connection with adept server at piaware.flightaware.com/1200 established
piaware       | [piaware] 2022/03/28 19:12:34 TLS handshake with adept server at piaware.flightaware.com/1200 completed
piaware       | [piaware] 2022/03/28 19:12:34 FlightAware server certificate validated
piaware       | [piaware] 2022/03/28 19:12:34 encrypted session established with FlightAware
piaware       | [piaware] 2022/03/28 19:12:50 Login attempt with adept server at piaware.flightaware.com/1200 timed out
piaware       | [piaware] 2022/03/28 19:12:50 reconnecting in 4 seconds...
piaware       | [piaware] 2022/03/28 19:12:54 Connecting to FlightAware adept server at 206.253.80.199/1200
piaware       | [piaware] 2022/03/28 19:12:54 Connection with adept server at 206.253.80.199/1200 established
piaware       | [piaware] 2022/03/28 19:12:54 TLS handshake with adept server at 206.253.80.199/1200 completed
piaware       | [piaware] 2022/03/28 19:12:54 FlightAware server certificate validated
piaware       | [piaware] 2022/03/28 19:12:54 encrypted session established with FlightAware
piaware       | [piaware] 2022/03/28 19:12:55 logged in to FlightAware as user guest
piaware       | [piaware] 2022/03/28 19:12:55 my feeder ID is <redacted>
piaware       | [piaware] 2022/03/28 19:12:55 site statistics URL: https://flightaware.com/adsb/stats/site/173611
piaware       | [piaware] 2022/03/28 19:12:57 0 msgs recv'd from dump1090; 0 msgs sent to FlightAware
piaware       | [beast-splitter] 2022/03/28 19:13:31 127.0.0.1:30004: connected to 127.0.0.1:30004 with settings 
piaware       | [beast-splitter] 2022/03/28 19:13:31 net(readsb:30005): configured with settings: BCdfGijk
piaware       | [piaware] 2022/03/28 19:13:31 piaware received a message from dump1090!
piaware       | [piaware] 2022/03/28 19:13:32 piaware has successfully sent several msgs to FlightAware!
piaware       | [piaware] 2022/03/28 19:17:57 726 msgs recv'd from dump1090 (726 in last 5m); 726 msgs sent to FlightAware

MLAT in relay mode #89 - error in implementation

Closed issue " #MLAT in relay mode #89" has a bug in the implementation

The implemented code references "MLAT_RESULTS_BEASTHOST" where it should reference "MLAT_RESULTS_BEASTPORT". This causes issue if the MLAT_RESULTS_BEASTPORT environment variable is set. When not the default port of 30104 is used as intended.

Part of my docker-compose and the relevant log from the piaware container

piaware:
   image: mikenye/piaware:latest
   tty: true
   container_name: piaware
   restart: always
   environment:
     - TZ="Europe/London"
     - LAT=51.xxxxx
     - LONG=-0.xxxx
     - RECEIVER_TYPE=relay
     - BEASTHOST=readsb
     - BEASTPORT=30005
     - ALLOW_MLAT=yes
     - MLAT_RESULTS=yes
     - MLAT_RESULTS_BEASTHOST=readsb
     - MLAT_RESULTS_BEASTPORT=30104
     - USERNAME=<redacted>
     - PASSWORD=<redacted>
     - FEEDER_ID=<redacted>
   tmpfs:
     - /run:exec,size=64M
     - /var/log
   links:
     - readsb

...
[piaware] 2022/04/21 10:21:58 multilateration data requested
[piaware] 2022/04/21 10:21:58 no ADS-B data program is serving on port 30005, not starting multilateration client yet
[piaware] 2022/04/21 10:21:58 no ADS-B data program seen listening on port 30005 for 3 seconds, next check in 60s
[piaware] 2022/04/21 10:21:58 UAT support disabled by local configuration setting: uat-receiver-type
[dump1090] 2022/04/21 10:22:03 Thu Apr 21 10:22:03 2022 dump1090-fa v7.2 starting up.
[dump1090] 2022/04/21 10:22:03 Net-only mode, no SDR device or file open.
[piaware] 2022/04/21 10:22:30 0 msgs recv'd from the ADS-B data program at readsb/30005; 0 msgs sent to FlightAware
[beast-splitter] 2022/04/21 10:22:55 127.0.0.1:30004: connected to 127.0.0.1:30004 with settings
[beast-splitter] 2022/04/21 10:22:55 net(readsb:30005): configured with settings: BCdfGijk
[piaware] 2022/04/21 10:22:58 Starting multilateration client: /usr/lib/piaware/helpers/fa-mlat-client --input-connect localhost:30005 --input-type auto --results beast,connect,localhost:30104 --results beast,listen,30105 --results ext_basestation,listen,30106 --results beast,connect,readsb:readsb --udp-transport 206.253.80.200:11743:1875374332
[piaware] 2022/04/21 10:22:58 mlat-client(386): fa-mlat-client 0.2.12 starting up
[piaware] 2022/04/21 10:22:58 mlat-client(386): Using UDP transport to 206.253.80.200 port 11743
[piaware] 2022/04/21 10:22:58 mlat-client(386): Listening for Beast-format results connection on port 30105
[piaware] 2022/04/21 10:22:58 mlat-client(386): Listening for Extended Basestation-format results connection on port 30106
[piaware] 2022/04/21 10:22:58 mlat-client(386): Warning: Ignoring bad results output option 'beast,connect,readsb:readsb': invalid literal for int() with base 10: 'readsb'
[piaware] 2022/04/21 10:22:58 mlat-client(386): Route MTU changed to 1500
[piaware] 2022/04/21 10:22:58 mlat-client(386): Input connected to localhost:30005
...

Problem code:

# If MLAT_RESULTS_BEAST_CONNECT is specified
if [[ -n "$MLAT_RESULTS_BEASTHOST" ]]; then
  piaware-config mlat-results-format "$(piaware-config -show mlat-results-format) beast,connect,${MLAT_RESULTS_BEASTHOST}:${MLAT_RESULTS_BEASTHOST:-30104}"
fi

Fix:

# If MLAT_RESULTS_BEAST_CONNECT is specified
if [[ -n "$MLAT_RESULTS_BEASTHOST" ]]; then
  piaware-config mlat-results-format "$(piaware-config -show mlat-results-format) beast,connect,${MLAT_RESULTS_BEASTHOST}:${MLAT_RESULTS_BEASTPORT:-30104}"
fi

MLAT in relay mode

I'm running dump1090-fa on a remote machine. When I have this container in relay mode MLAT is unable to connect, probably because it's trying to connect to dump1090-fa on localhost:30104, as per the Multilateration Settings on FlightAware's Advanced Configuation page:

The default settings set up three items:

  • beast,connect,localhost:30104 - this feeds multilateration results back to the local dump1090 for display on the map

If the container is in relay mode, it should reuse the BEASTHOST variable and add the following line to the piaware.config file:
mlat-results-format beast,connect,$BEASTHOST:30104
I'm guessing this is best done in the docker-piaware/rootfs/etc/cont-init.d/01-piaware file
piaware-config mlat-results-format "beast,connect,${BEASTHOST}:30104"

Does the __arm__ flag get defined in BuildX?

I am trying to get a sense of how much latency there is on the receive side using Dump1090 on a Pi4. I noticed this comment in the RTL-SDR code:
https://github.com/flightaware/dump1090/blob/f862b530c8cea51f4bb9e72356579be67818dcaf/sdr_rtlsdr.c#L56-L59

I was wondering if the __arm__ flag gets defined in the BuildX system from arm/v7 images?

The commit message explains a bit more:
flightaware/dump1090@653ad61

I am trying to use ADS-B messages to take picture of aircraft as they fly by, so I am trying to account for all the latency in the messages: https://github.com/IQTLabs/SkyScan

logspam when running in relay mode for UAT and no 1090

Dump1090 runs and fails constantly when not using any 1090 sources. Fix is probably copying the RUN_DUMP978 checks from the dump978 service into the dump1090 service, modifying to check the correct environment variables, allowing RECEIVER_TYPE to be none

healthcheck high load

I had to force my nomad based piaware docker setup down to the image with label 3.8.0 due to the health check in version 3.8.1. The node it was running on got a really high load making it unstable.

I'll dig into it once I find some time to debug the issue but thought I already give a headsup.

After Upgrading "couldn't open socket: cannot assign requested address"

Hey y'all,

after upgrading docker-piaware to the latest version, the container couldn't receive any flight information, after executing piaware-status I figured out that the socket could not be opend by piaware - any idea why that is the case? I manually downgraded to 7.1 and the problem disappeared.

All the best,
Paul

docker-piaware container issues in ADSB.IM

Hello - I am hoping to get some help with this container. I'm using the ADSB.IM image to feed a bunch of different aggregators as well as FlightAware. I've documented the issue with Dirk/ADSB.IM on GitHub here, so I'm hoping this has enough detail of the issue I'm having. dirkhh/adsb-feeder-image#20 Some additional details, I'm seeing it disconnect from Flightaware probably every 5 minutes. I originally had this setup on a Pi 3B+ with an old SD card. I have since set it up from scratch with a brand new Sandisk sd card, Pi 4 and brand new Pi USB-C power adapter. Please let me know what other information I can get to help troubleshoot this. I appreciate any help or thoughts on this!

TLDR: PiAware container loses connection to FlightAware every ~5 minutes and eventually consumes 100% of 1 core and stops uploading to FlightAware.

Error running on latest (v4)

Did you change something on the latest version? I am toggling between Raspberry Pi OS armhf and arm64 (still waiting for a stable version of the latter). I was running on arm64, but for some reason, network sometimes does not come up at boot. So I switched back to a clean armhf image.
Now I noticed piaware was not providing data. Checking the logs shows:
[dump1090] 2020/12/06 17:17:14 /usr/local/bin/dump1090: error while loading shared libraries: libatomic.so.1: cannot open shared object file: No such file or directory

When reverting back from latest to before_refactor, it works OK. Something wrong with v4 (running on armhf)?

Site Location / Range rings missing in 8.2

I am using the piaware v8.2 amd64 container and have noticed my site location and range rings are not displaying. I have unset the LAT/LONG environment variables to no effect. My understanding is with 8.2 it is meant to get the site information from piaware itself, and it looks like it is.

https://pastebin.com/DcwjiCr6

If I set the LAT/LONG env vars and downgrade to 8.1 this works successfully. Is there some additional work required for this container to get location/range rings on 8.2?

Health check script doesn't support IPv6

I've been running this container in my Kubernetes cluster which has dual-stack networking, and the PiAware daemon happily connects to FlightAware using IPv6. Unfortunately the health check script's regexes exclude IPv6 addresses so the health check always fails.

In addition, netstat and other tools from the net-tools suite are deprecated; it would be better to switch to ss to get the same information.

I'll prepare a PR which fixes this.

Docker container does not start dump1090 after upgrade to 7.2

Hello Team!

first of all, I would like to thank you for your efforts on this project. I'm running your piaware image on an old Dell Laptop for quite a while. I do regular updates of the image. The latest happed today. I upgraded from 7.1 to 7.2 and suddenly I could not send message to FlightAware. I logged into the container and figured out that there is no dump1090 process running. I performed a downgrade to 7.1 and everything works as expected. Any ideas?

Kind regards

Jens

skyaware978 is 404

I lost the skyaware978 view on the piaware container web UI when the images moved to gchr. I had to manually copy /usr/share/dump978-fa into /usr/share/skyaware978 to get it back. In https://github.com/sdr-enthusiasts/docker-baseimage/blob/main/Dockerfile.dump978-full#L41 you make the /usr/share/dump978-fa directory and copy skyaware into it, but you never make the /usr/share/skyaware978 directory.

Once I manually copied /usr/share/dump978-fa back into /usr/share/skyaware978 within the running container, the skyaware978 web UI came back no problem. I don't know what to fix in docker-baseimage to make that directory get created and populated.

Docker-piaware not recieving messages from readsb-protobuf

Hi Mike

Just discovered your images yesterday and the seem to build an extremly nice environment to replace my standalone Piaware feeder. I'm using a Raspberry Pi 3b+ with Ubuntu Server 20.04 for Rasberry on it. Works like a charm.

So far I've got readsb-protobuf installed and it seem to work fine.
"docker exec -it readsb viewadsb" shows me a nice Table with plenty of recieved messages. Also the graphical output on port 8080 works just fine.

But when I start docker-piaware it reports
"0 msgs recv'd from dump1090 (0 in last 5m); 0 msgs sent to FlightAware"

Somehow I do not seem to get the connection working between the Containers.
I'm using BEASTHOST | 127.0.0.1 but when i change it to the ip address of the Host the result stays the same.

Do you happen to know what I am missing from your manual in Github??

regards,
Henk

piaware v9.0: AttributeError: 'AdeptConnection' object has no attribute 'send_clock_jump'

This is using ghcr.io/sdr-enthusiasts/docker-piaware v9.0:

[piaware] 2023/11/19 21:28:42 mlat-client(174): outlier detected with ts: 34.368, last_ts: 99.340, ts_elapsed: -64.972, sys_elapsed: 2242.911 (values in seconds)
[piaware] 2023/11/19 21:28:42 mlat-client(174): Unexpected exception on connection to localhost:30005
[piaware] 2023/11/19 21:28:42 mlat-client(174): Traceback (most recent call last):
[piaware] 2023/11/19 21:28:42 mlat-client(174): File "/usr/lib/python3.11/asyncore.py", line 88, in read
[piaware] 2023/11/19 21:28:42 mlat-client(174): obj.handle_read_event()
[piaware] 2023/11/19 21:28:42 mlat-client(174): File "/usr/lib/python3.11/asyncore.py", line 425, in handle_read_event
[piaware] 2023/11/19 21:28:42 mlat-client(174): self.handle_read()
[piaware] 2023/11/19 21:28:42 mlat-client(174): File "/usr/local/lib/python3.11/dist-packages/MlatClient-0.4.2-py3.11-linux-x86_64.egg/mlat/client/receiver.py", line 214, in handle_read
[piaware] 2023/11/19 21:28:42 mlat-client(174): self.coordinator.input_received_messages(messages)
[piaware] 2023/11/19 21:28:42 mlat-client(174): File "/usr/local/lib/python3.11/dist-packages/MlatClient-0.4.2-py3.11-linux-x86_64.egg/mlat/client/coordinator.py", line 328, in input_received_messages
[piaware] 2023/11/19 21:28:42 mlat-client(174): handler(message, now)
[piaware] 2023/11/19 21:28:42 mlat-client(174): File "/usr/local/lib/python3.11/dist-packages/MlatClient-0.4.2-py3.11-linux-x86_64.egg/mlat/client/coordinator.py", line 350, in received_timestamp_jump_event
[piaware] 2023/11/19 21:28:42 mlat-client(174): self.server.send_clock_jump()
[piaware] 2023/11/19 21:28:42 mlat-client(174): ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[piaware] 2023/11/19 21:28:42 mlat-client(174): AttributeError: 'AdeptConnection' object has no attribute 'send_clock_jump'
[piaware] 2023/11/19 21:28:42 mlat-client(174): Lost connection to localhost:30005

Docker image loads and checks in but continuously restarts dump1090

LSUSB from host (raspiberrypi4 Ubuntu 19.10.01 arm64) Bus 001 Device 005: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
LSUSB from container: Bus 001 Device 005: ID 0bda:2838

[dump1090-fa] Wed Apr 22 10:15:16 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 6369 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
6370 Done | awk '{print "[dump1090-fa] " $0}'
[dump1090-fa] Wed Apr 22 10:15:17 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 6386 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
6387 Done | awk '{print "[dump1090-fa] " $0}'
[dump1090-fa] Wed Apr 22 10:15:18 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 6403 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
6404 Done | awk '{print "[dump1090-fa] " $0}'
[dump1090-fa] Wed Apr 22 10:15:19 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 6420 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
6421 Done | awk '{print "[dump1090-fa] " $0}'
[dump1090-fa] Wed Apr 22 10:15:20 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)

As you can see it restarts every second, i'm just not sure why

Here is the log from the start if it helps

[piaware] Connecting to FlightAware adept server at piaware.flightaware.com/1200
[piaware] Connection with adept server at piaware.flightaware.com/1200 established
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 286 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
287 Done | awk '{print "[dump1090-fa] " $0}'
[piaware] TLS handshake with adept server at piaware.flightaware.com/1200 completed
[piaware] FlightAware server certificate validated
[piaware] encrypted session established with FlightAware
[dump1090-fa] Wed Apr 22 10:25:16 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[piaware] adept reported location: 44.06796, -69.52292, 103ft AMSL
[piaware] logged in to FlightAware as user tmonfiletto
[piaware] my feeder ID is Redacted
[piaware] site statistics URL: https://flightaware.com/adsb/stats/user/tmonfiletto#stats-71046
[piaware] multilateration data requested
[piaware] no ADS-B data program is serving on port 30005, not starting multilateration client yet
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
[piaware] ADS-B data program 'dump1090' is listening on port 30005, so far so good
[piaware] Starting faup1090: /usr/lib/piaware/helpers/faup1090 --net-bo-ipaddr localhost --net-bo-port 30005 --stdout --lat 44.068 --lon -69.523
[piaware] Started faup1090 (pid 317) to connect to dump1090
[piaware] UAT support disabled by local configuration setting: uat-receiver-type
./run: line 48: 308 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
309 Done | awk '{print "[dump1090-fa] " $0}'
[piaware] lost connection to dump1090 via faup1090
[piaware] faup1090 exited normally
[piaware] will reconnect to dump1090 in 30 seconds
[dump1090-fa] Wed Apr 22 10:25:17 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 328 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
329 Done | awk '{print "[dump1090-fa] " $0}'
[dump1090-fa] Wed Apr 22 10:25:18 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)
[dump1090-fa] Found Rafael Micro R820T tuner
[dump1090-fa] rtlsdr: enabling tuner AGC
[dump1090-fa] Allocating 4 zero-copy buffers
./run: line 48: 345 Killed exec "${DUMP1090_BIN}" "${DUMP1090_CMD[@]}" 2>&1
346 Done | awk '{print "[dump1090-fa] " $0}'
[dump1090-fa] Wed Apr 22 10:25:19 2020 EDT dump1090-fa starting up.
[dump1090-fa] rtlsdr: using device #0: Generic RTL2832U OEM (Realtek, RTL2838UHIDIR, SN 00000001)

Connecting YAAC Client to piaware ADSB output

Hello!

This is less an issue, more of a question. I am a Ham Radio Operator and I am trying to tie the Yet Another APRS Client (YAAC) program to the ADS-B output from the PiAware Container. YAAC has a plugin that will allow the software to decode ADS-B from dump1090 and display it on a map with other APRS Stations. Trying to do this for a couple of reasons: 1) it's geeky and cool and 2) trying to tidy up a screen I use to display dashboards and maps and stuff. If I can combine two things into the one app that would be awesome.

I have been able to get YAAC to connect to port 30002 but it does not display the planes on the map, even when they are showing on the skyaware map.

So I looked on the YAAC website and I found this page: https://www.ka2ddo.org/ka2ddo/YAACdocs/config_adsb.html on configuring ADS-B. It says it needs the ASCII-hex frames to decode properly.

So my question: Does the PiAware docker container dump the ASCII-hex data to a port (and which port) or is there a way to enable it or something else I am missing? If you need anything from me, please let me know. It's very possible it's a terminology thing and I am sitting here staring at it and just not computing....

Thanks for all your hard work with the container. I am running it on a RPi4 2gig and it runs great. Have it running for a while now and feeding to Flightaware. Just added the FR24feed container tonight.

Jeff

buffer overflow detected armv7l (pi4)

when using the images both v4 / v5 I got a buffer overflow detected and a core dump running on a pi 4 did I overlooked something?

Mar 20 16:18:20 node08 FLIGHTAWARE[317]: [dump1090] 2021/03/20 16:18:20 Net-only mode, no SDR device or file open.
Mar 20 16:18:20 node08 FLIGHTAWARE[317]: [services.d] done.
Mar 20 16:18:20 node08 FLIGHTAWARE[317]: [piaware] 2021/03/20 16:18:20 ****************************************************
Mar 20 16:18:20 node08 FLIGHTAWARE[317]: [piaware] 2021/03/20 16:18:20 piaware version 5.0 is running, process ID 339
Mar 20 16:18:20 node08 FLIGHTAWARE[317]: [piaware] 2021/03/20 16:18:20 your system info is: Linux 954d8927f124 5.10.14-2-ARCH #1 SMP Fri Feb 12 13:51:38 UTC 2021 armv7l GNU/Linux
Mar 20 16:18:20 node08 FLIGHTAWARE[317]: [piaware] 2021/03/20 16:18:20 *** buffer overflow detected ***: /usr/bin/piaware terminated
Mar 20 16:18:21 node08 FLIGHTAWARE[317]: ./run: line 19:   339 Aborted                 (core dumped) "${PIAWARE_BIN}" "${PIAWARE_CMD[@]}" 2>&1
Mar 20 16:18:21 node08 FLIGHTAWARE[317]:        341 Done                    | stdbuf -o0 awk '{print "[piaware] " strftime("%Y/%m/%d %H:%M:%S", systime()) " " $0}'

MLAT with docker-piaware using docker-readsb-protobuf not working(?)

I'm using docker-readsb-protobuf, docker-piaware and other SDR Enthusiasts feeders and am unable to get MLAT working. I've followed the readmes and have also tried using themlathub method but none seem to work. Co-ordinates are set accuratley. I'm in a very populated area with lots of air traffic (near LHR airport) and would expect to synchronization with quite a few MLAT sites.

My setup:

RPi3 B+ (with official Pi PSU) running Raspberry Pi OS (64bit) and Docker version 20.10.5+dfsg1 and a FlightAware Pro Stick Plus

$ uname -a
Linux rpi3-iot 5.15.32-v8+ #1538 SMP PREEMPT Thu Mar 31 19:40:39 BST 2022 aarch64 GNU/Linux

$ lscpu
Architecture:                    aarch64
Byte Order:                      Little Endian
CPU(s):                          4
On-line CPU(s) list:             0-3
Thread(s) per core:              1
Core(s) per socket:              4
Socket(s):                       1
Vendor ID:                       ARM
Model:                           4
Model name:                      Cortex-A53
Stepping:                        r0p4
CPU max MHz:                     1400.0000
CPU min MHz:                     600.0000
BogoMIPS:                        38.40
Vulnerability Itlb multihit:     Not affected
Vulnerability L1tf:              Not affected
Vulnerability Mds:               Not affected
Vulnerability Meltdown:          Not affected
Vulnerability Spec store bypass: Not affected
Vulnerability Spectre v1:        Mitigation; __user pointer sanitization
Vulnerability Spectre v2:        Not affected
Vulnerability Srbds:             Not affected
Vulnerability Tsx async abort:   Not affected
Flags:                           fp asimd evtstrm crc32 cpuid

$ lsusb
Bus 001 Device 004: ID 0bda:2832 Realtek Semiconductor Corp. RTL2832U DVB-T
Bus 001 Device 005: ID 0424:7800 Microchip Technology, Inc. (formerly SMSC) 
Bus 001 Device 003: ID 0424:2514 Microchip Technology, Inc. (formerly SMSC) USB 2.0 Hub
Bus 001 Device 002: ID 0424:2514 Microchip Technology, Inc. (formerly SMSC) USB 2.0 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

$ free
               total        used        free      shared  buff/cache   available
Mem:          931588      293208       84288       12768      554092      579532
Swap:         102396       38144       64252

$ docker info
Client:
 Context:    default
 Debug Mode: false

Server:
 Containers: 9
  Running: 9
  Paused: 0
  Stopped: 0
 Images: 34
 Server Version: 20.10.5+dfsg1
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: local
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc io.containerd.runc.v2 io.containerd.runtime.v1.linux
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 1.4.13~ds1-1~deb11u1
 runc version: 1.0.0~rc93+ds1-5
 init version: 
 Security Options:
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 5.15.32-v8+
 Operating System: Raspbian GNU/Linux 11 (bullseye)
 OSType: linux
 Architecture: aarch64
 CPUs: 4
 Total Memory: 909.8MiB
 Name: rpi3-iot
 ID: 6RQR:F6X7:WQ6C:RPQ5:BF57:HRZL:XEF4:GBHW:ICPI:7WDE:ROS3:5SQQ
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: No memory limit support
WARNING: No swap limit support
WARNING: Support for cgroup v2 is experimental

$ cat docker-compose.yaml
version: '3.6'

networks:
  adsbnet:

volumes:
  readsbpb_rrd:
  readsbpb_autogain:

services:

  readsb:
    image: mikenye/readsb-protobuf:latest
    tty: true
    container_name: readsb
    hostname: readsb
    restart: always
    devices:
      - ${DEV_1}
    environment:
      - TZ=${TZ}
      - READSB_DCFILTER=true
      - READSB_DEVICE_TYPE=rtlsdr
      - READSB_FIX=true
      - READSB_GAIN=autogain
      - READSB_LAT=${LAT}
      - READSB_LON=${LONG}
      - READSB_MAX_RANGE=600
      - READSB_MODEAC=true
      - READSB_RX_LOCATION_ACCURACY=2
      - READSB_STATS_RANGE=true
      - READSB_NET_ENABLE=true
      - READSB_NET_CONNECTOR=mlathub,30105,beast_in
#      - DISABLE_PERFORMANCE_GRAPHS=true
#      - DISABLE_WEBAPP=true

    volumes:
      - ${LOC_TZ}
      - readsbpb_rrd:/run/collectd
      - readsbpb_autogain:/run/autogain
    tmpfs:
      - /run/readsb:size=64M
      - /var/log:size=32M
    networks:
      adsbnet:
    ports:
      - 8888:8080
      - 30003:30003
      - 30005:30005
    dns:
      - ${DNS_1}
      - ${DNS_2}

  mlathub:
    image: mikenye/readsb-protobuf:latest
    tty: true
    container_name: mlathub
    restart: always
    environment:
      - TZ=${TZ}
      - DISABLE_PERFORMANCE_GRAPHS=true
      - DISABLE_WEBAPP=true
      - READSB_NET_ENABLE=true
      - READSB_NET_ONLY=true
      - READSB_FORWARD_MLAT=true
      - READSB_NET_CONNECTOR=piaware,30105,beast_in;rbfeeder,30105,beast_in
      - READSB_NET_BEAST_OUTPUT_PORT=30105
      - READSB_NET_BEAST_INPUT_PORT=30104
    volumes:
      - ${LOC_TZ}
    tmpfs:
      - /run/readsb
      - /var/log
    networks:
      adsbnet:
    ports:
      - 30105:30105
    dns:
      - ${DNS_1}
      - ${DNS_2}

  piaware:
    image: mikenye/piaware:latest
    tty: true
    container_name: piaware
    restart: always
    environment:
      - TZ=${TZ}
      - LAT=${LAT}
      - LONG=${LONG}
      - RECEIVER_TYPE=relay
      - BEASTHOST=readsb
      - BEASTPORT=30005
      - ALLOW_MLAT=yes
      - MLAT_RESULTS=yes
      - MLAT_RESULTS_BEASTHOST=mlathub
      - MLAT_RESULTS_BEASTPORT=30104
      - USERNAME=${PiA_USERNAME}
      - PASSWORD=${PiA_PASSWORD}
      - FEEDER_ID=${PiA_FEEDER_ID}
    volumes:
      - ${LOC_TZ}
    tmpfs:
      - /run:exec,size=64M
      - /var/log
    networks:
      adsbnet:
    ports:
      - 8080:80/tcp
    dns:
      - ${DNS_1}
      - ${DNS_2}
    depends_on:
      - readsb
      - mlathub

  fr24feed:
    image: mikenye/fr24feed:latest
    container_name: fr24feed
...

$ docker logs piaware | tail
[piaware] 2022/04/25 09:26:40 69820 msgs recv'd from dump1090 (1299 in last 5m); 69739 msgs sent to FlightAware
[piaware] 2022/04/25 09:31:40 71117 msgs recv'd from dump1090 (1297 in last 5m); 71036 msgs sent to FlightAware
[piaware] 2022/04/25 09:36:40 72363 msgs recv'd from dump1090 (1246 in last 5m); 72282 msgs sent to FlightAware
[piaware] 2022/04/25 09:39:46 mlat-client(2922): Receiver status: connected
[piaware] 2022/04/25 09:39:46 mlat-client(2922): Server status:   clock unstable
[piaware] 2022/04/25 09:39:46 mlat-client(2922): Receiver:  484.2 msg/s received       82.1 msg/s processed (17%)
[piaware] 2022/04/25 09:39:46 mlat-client(2922): Server:      0.0 kB/s from server    0.0kB/s TCP to server     1.0kB/s UDP to server
[piaware] 2022/04/25 09:39:46 mlat-client(2922): Aircraft: 7 of 11 Mode S, 27 of 30 ADS-B used
[piaware] 2022/04/25 09:41:40 73562 msgs recv'd from dump1090 (1199 in last 5m); 73481 msgs sent to FlightAware
[piaware] 2022/04/25 09:46:40 74457 msgs recv'd from dump1090 (895 in last 5m); 74376 msgs sent to FlightAware

Message on my FlightWare stats page for my site:
This feeder is not being used for multilateration because its timing information appears to be unreliable. This can be caused by the site location being incorrect, or because your Pi is running out of free CPU.

The readsb-protobuf performance graphs show at most 2-3 MLAT messages in total directly after startup but never increment further.

Does anyone have this working in a similar setup? Am I doing something incorrectly that could be causing this.

support for SSL-/-TLS certificates

Just out of curiosity, why doesn't there seem to be support for SSL-/TLS-certificates?

I have yet to find even óne docker container for ADS-B where the webinterface to display the flights can be used with those.

Consider this a request to implement support for usage of certificates.

healthcheck checks for wrong piaware servers and returns exit code 1

Hello,

I'm quite happy with the docker image for PiAware. But I just found out that the healthcheck (/scripts/healthcheck.sh) tells me that my system is unhealthy. It tells me that there is no connection to Flightaware, but there is a valid connection.

I think that the problem is that the valid IP addresses are taken from the command

root@piaware:/# piaware-config -show adept-serverhosts
piaware.flightaware.com piaware.flightaware.com {70.42.6.156 70.42.6.232 70.42.6.224 70.42.6.228 70.42.6.198 70.42.6.225}

When I issue a manual netstat -an I can see that there is a connection to 206.253.82.195 which resolves to gregs.dal.flightaware.com.

So the question is: Where can I configure the list IPs? And why is my Piaware connectiing to this server?

Thanks in advance and best regards from Germany!

Jens

piaware defaulting to wrong uat receiver port

./rootfs/etc/services.d/978raw-splitter/run

socat -d -d TCP-LISTEN:30978,fork TCP:"$UAT_RECEIVER_HOST":"${UAT_RECEIVER_PORT:-30979}" \

change to
socat -d -d TCP-LISTEN:30978,fork TCP:"$UAT_RECEIVER_HOST":"${UAT_RECEIVER_PORT:-30978}" \

Disabling IPV6 Causes Core Dump

This may be a known issue, but I am posting in case someone else is stumped (as I was).

If ipv6.disable=1 is included in the linux kernel command line the following error occurs within the container along with a core dump.

[piaware] 2023/12/27 23:31:38 ****************************************************
[piaware] 2023/12/27 23:31:38 piaware version 9.0.1 is running, process ID 1701
[piaware] 2023/12/27 23:31:38 your system info is: Linux 6eff3eff43b6 6.6.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 21 Dec 2023 19:01:01 +0000 x86_64 GNU/Linux
[piaware] 2023/12/27 23:31:38 *** bit out of range 0 - FD_SETSIZE on fd_set ***: terminated
/etc/s6-overlay/scripts/piaware: line 19:  1701 Aborted                 (core dumped) "${PIAWARE_BIN}" "${PIAWARE_CMD[@]}" 2>&1
      1702 Done                    | stdbuf -o0 sed '/^$/d'
      1703 Done                    | stdbuf -o0 awk '{print "[piaware] " strftime("%Y/%m/%d %H:%M:%S", systime()) " " $0}'
      1704 Done                    | tee -a /var/log/piaware/current

If ipv6.disable=1 is removed, the error no longer occurs.

Kernel: 6.6.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 21 Dec 2023 19:01:01 +0000 x86_64 GNU/Linux
OS: Archlinux
Date: 12/27/2023
CPU: Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz
CPU Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm epb pti ssbd ibrs ibpb stibp tpr_shadow flexpriority ept vpid xsaveopt dtherm ida arat pln pts vnmi md_clear flush_l1d
Thanks for maintaining this build. The docker system is SO convenient for radio work.

Jeff

port and IP as shown on flightaware site information

Hi @mikenye &all,

first of all thx for the great work and documentation. I found some minor thing to improve:

https://flightaware.com/adsb/stats/user/ shows the internal IP and port of the local webinterface
under "site information": "Web Interface: View live data (requires local network connection)"
which shows as: http://172.17.0.6:8080/

This is the internal docker IP address or piaware:
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' piaware
172.20.0.6

As I assume that at least the IP is reported from the piaware image somehow, it might be nice if this could get an option,
like default(current behaviour), auto-detect (which could show the main locally routed ip and the correct port (here 8081), or manual, where you can change it to what you want.

Healthcheck now failing on Docker

Missing healthcheck script:

# docker inspect piaware | jq .[].State.Health.Log[-1].Output 
"/bin/sh: 1: /healthcheck.sh: not found\n"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.