github sgoudelis/ground-station v0.4.6

4 hours ago

Docker Image

Version: 0.4.6
Environment: production
Git Commit: f113f0d
Build Date: 20260506

📖 View Project Documentation

Commits in this release:

  • f113f0d "Update celestial layout schema to version 4 and adjust default
  • 8e5c201 "Enhance grid layout storage management: add single layout clear/export functionality, extend support to Celestial page, and refactor layout handling for improved scalability."
  • ddba276 "Optimize solar system canvas rendering: add ring and label radius limits, skip redundant arcs, and improve viewport distance checks for performance."
  • 8bc0ef2 "Add periodic sync for celestial vectors: implement automatic cache refresh for monitored missions, enhance dynamic caching logic, and introduce configuration-based sync timings."
  • 56cd012 "Add Sun as celestial body: integrate Sun into body catalog, support heliocentric calculations, refine frontend icon handling, and update attribution for mission resources."
  • c8c72b2 "Add mission icon attribution and caching support: introduce ATTRIBUTION.md for image sources, enhance celestial pass timeline with densified elevation curves, and integrate mission-icon handling in frontend and backend routes."
  • e04e13a "Add persistent left-margin state and event handling for waterfall: ensure continuity across detach/reattach, optimize rotator event updates, and refine dotted line rendering conditions."
  • ce6346f "Add slewing status support for rotators: track slewing count in summary, update color logic, and enhance rotator status handling in hardware popover."
  • 4e9d7df Rename satellite image files: relocate from backend/satimages to backend/images/satellites for improved directory organization.
  • 6c0e23e "Add body icons support: implement texture-based planet icon rendering, integrate BodyIcon component into CelestialInfoIsland, and enable backend/static route for body-icons."
  • aa8f69c "Refactor CelestialInfoIsland and CelestialPasses: update background styles with gradient logic, replace progress calculation with ProgressFormatter, and clean up unused utility functions."
  • ec84abe "Add dynamic cache policy and elevation curve support: implement adaptive TTL logic for celestial vector caching, enhance pass events with precise elevation curve data, and update UI for responsive action buttons."
  • 941da78 "Remove redundant target key display in CelestialInfoIsland: simplify layout by eliminating unused info text element and unnecessary condition."
  • 191ded6 "Add CelestialInfoIsland component: implement detailed target display with real-time data, refactor angle formatting for consistency, and update layout to integrate info panel."
  • 30c57c2 "Remove timeline components and constants: delete PassCurve, CurrentTimeMarker, PassTooltipContent, useTimelineEvents, and related constants from the target directory."
  • b53b7a6 "Refactor map settings dialog: remove redundant DialogActions, enhance layout with flex-based structure, and streamline satellite overlay settings with modular components and default configuration handling."
  • a131706 "Enhance map components with WMS support: add NASA GIBS layers, update CRS handling for H.264/EPSG4326 projections, refactor map initialization logic, and standardize dialog styling."
  • 3210205 "Add bandscope rate-limiting feature: introduce toggle for rate-limiting, integrate state management, and ensure conditional draw logic across DOM and worker components."
  • 5159f44 Bump version to 0.4.5

Pull the Docker image:

For AMD64 systems:

docker pull --platform linux/amd64 ghcr.io/sgoudelis/ground-station:0.4.6

For ARM64 systems (Raspberry Pi, etc):

docker pull --platform linux/arm64 ghcr.io/sgoudelis/ground-station:0.4.6

Or pull architecture-specific tags directly:

# AMD64
docker pull ghcr.io/sgoudelis/ground-station:0.4.6-amd64

# ARM64
docker pull ghcr.io/sgoudelis/ground-station:0.4.6-arm64

Run 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.4.6
# 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.4.6

Option 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.4.6
# 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.4.6

Note: Replace /path/to/data with 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:/dev ensures 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.4.6

# 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.4.5...v0.4.6

Don't miss a new ground-station release

NewReleases is sending notifications on new releases.