/docker-spyserver

Docker container for AirSpy SpyServer for x64 and arm32

Primary LanguageShell

Docker AirSpy SpyServer

Docker container for AirSpy SpyServer, with support for x86 and arm32.

Forked from https://github.com/lloydpick/docker-spyserver to add compiling of updated device libraries, and extra configuration options

Summary

The container provides you with the SpyServer application running on port 5555. It has been tested with an RTL-SDR R820T2 RTL2832U device on a Raspberry Pi 3 Model B+. There is a docker-compose.yml file should you want to see how to correctly mount the USB device.

Example

See docker-compose.yml

Configuration

All configuration for this Docker container is done via environmental variables with sane defaults. To change a setting, simply set the appropriate environment variable.

Environment Variable Default Value Notes
BIND_PORT 5555 Port to run SpyServer on
LIST_IN_DIRECTORY 1 List Server in the AirSpy Directory, 1 for yes, 0 for no
OWNER_NAME Name in the directory
OWNER_EMAIL Directory contact
ANTENNA_TYPE Random Wire/Magnetic Loop/Mini-Whip/Inverted V/etc.
ANTENNA_LOCATION Lat/Long, eg. 48.858332, 2.294560
GENERAL_DESCRIPTION Description for the directory
MAXIMUM_CLIENTS 1 Maximum number of clients that can connect at a time
MAXIMUM_SESSION_DURATION 0 Maximum session duration in minutes. 0 for no limit
AlLOW_CONTROL 1 Allow clients to retune and change of gain of the device
DEVICE_TYPE Auto Possible Values: AirspyOne, AirspyHF+, RTL-SDR, Auto (Scans for the first available device)
DEVICE_SERIAL 0 Device Serial Number as 64bit hex eg. 0xDD52D95C904534AD. A value of 0 will acquire the first available device.
FFT_FPS 15 FFT Frames Per Second
FFT_BIN_BITS 16 FFT Bins, Bins = 2^fft_bin_bits
BUFFER_SIZE_MS 50 Buffer Size (in milliseconds)
BUFFER_COUNT 10 Buffer Count
INITIAL_FREQUENCY Initial Center Frequency, leave undefined to use SpyServer default
DEVICE_SAMPLE_RATE Device Sample Rate
MAXIMUM_BANWIDTH Maximum Bandwidth (set to DEVICE_SAMPLE_RATE to allow "Raw IQ" mode), leave undefined to use SpyServer default
MINIMUM_FREQUENCY Minimum Tunable Frequency, leave undefined to use device default
MAXIMUM_FREQUENCY Maximum Tunable Frequency, leave undefined to use device default
FORCE_8BIT Force PCM 8bit only (any value will enable)
INITIAL_GAIN Initial Gain

Rebuilding

If you wish to rebuild this image for yourself, you can use the Dockerfile provided. However, the image that exists on DockerHub was built using the Docker experimental buildx functionality to build the arm32 version from a Mac. You can view the build command in the Makefile.