Docker Image
Version: 0.3.3
Environment: production
Git Commit: 78772bf
Build Date: 20260405
Commits in this release:
- 78772bf Bump version to 0.3.3 in
version.json. - 4a02c81 Auto-heal stale satellite group references, ensure consistent cleanup during satellite deletions, and optimize frontend satellite group selection behavior. Add corresponding tests to validate functionality.
- 868dd95 Add "Create Observation" and "Add Monitored Satellite" buttons, refine UI layout for better responsiveness, and enhance DataGrid focus styles and overlays.
- bf1504b Replace elevation trend icons with ArrowUpward and ArrowDownward for consistency.
- 1a99d08 Refactor satellites and passes tables for better filtering and UI:
- da69866 Refactor passes table to optimize performance and state management:
- 7e1e33d Refactor satellites and passes table components for improved performance, UI consistency, and maintainability:
- 16fa594 Refactor SDR settings and improve performance across waterfall components:
- dafec33 Refactor
SynchronizeTLEsCardandsources-table: simplify styles, remove unused elements, and adjust layout for consistency. - 2c63948 Refactor component state management and styling for performance and maintainability:
Pull the Docker image:
For AMD64 systems:
docker pull --platform linux/amd64 ghcr.io/sgoudelis/ground-station:0.3.3For ARM64 systems (Raspberry Pi, etc):
docker pull --platform linux/arm64 ghcr.io/sgoudelis/ground-station:0.3.3Or pull architecture-specific tags directly:
# AMD64
docker pull ghcr.io/sgoudelis/ground-station:0.3.3-amd64
# ARM64
docker pull ghcr.io/sgoudelis/ground-station:0.3.3-arm64Run the container:
Option 1: With SoapySDR Remote Server Discovery (Recommended)
Uses host networking to enable mDNS discovery of SoapySDR remote servers:
# AMD64
docker run -d \
--platform linux/amd64 \
--network host \
--name ground-station \
--restart unless-stopped \
--device=/dev/bus/usb \
--privileged \
-v /path/to/data:/app/backend/data \
-e GS_ENVIRONMENT=production \
-e GR_BUFFER_TYPE=vmcirc_mmap_tmpfile \
ghcr.io/sgoudelis/ground-station:0.3.3# ARM64 (Raspberry Pi, etc)
docker run -d \
--platform linux/arm64 \
--network host \
--name ground-station \
--restart unless-stopped \
-v /dev:/dev \
--privileged \
-v /path/to/data:/app/backend/data \
-e GS_ENVIRONMENT=production \
-e GR_BUFFER_TYPE=vmcirc_mmap_tmpfile \
ghcr.io/sgoudelis/ground-station:0.3.3Option 2: Standard Bridge Mode (No SoapySDR Remote Discovery)
Uses standard bridge networking with port mapping:
# AMD64
docker run -d \
--platform linux/amd64 \
-p 7000:7000 \
--name ground-station \
--restart unless-stopped \
--device=/dev/bus/usb \
--privileged \
-v /path/to/data:/app/backend/data \
-e GS_ENVIRONMENT=production \
-e GR_BUFFER_TYPE=vmcirc_mmap_tmpfile \
ghcr.io/sgoudelis/ground-station:0.3.3# ARM64 (Raspberry Pi, etc)
docker run -d \
--platform linux/arm64 \
-p 7000:7000 \
--name ground-station \
--restart unless-stopped \
-v /dev:/dev \
--privileged \
-v /path/to/data:/app/backend/data \
-e GS_ENVIRONMENT=production \
-e GR_BUFFER_TYPE=vmcirc_mmap_tmpfile \
ghcr.io/sgoudelis/ground-station:0.3.3Note: Replace
/path/to/datawith your desired data directory path. Option 1 (host networking) is required for automatic mDNS discovery of SoapySDR remote servers. Option 2 works for local SDRs and all other features. For ARM64, using-v /dev:/devensures all USB devices are accessible.
After starting the container, access the web interface at http://<YOUR_HOST>:7000
Upgrading an existing container:
# Stop and remove the existing container
docker stop ground-station
docker rm ground-station
# Pull the new version
docker pull ghcr.io/sgoudelis/ground-station:0.3.3
# Run the container again (use the appropriate command above for your architecture)Multi-arch support:
This image supports linux/amd64 and linux/arm64 platforms. Docker will automatically pull the correct architecture for your system.
Full Changelog: v0.3.2...v0.3.3