github sgoudelis/ground-station v0.8.13

6 hours ago

Docker Image

Version: 0.8.13
Environment: production
Git Commit: 371a0c8
Build Date: 20260925

📖 View Project Documentation

Commits in this release:

  • 371a0c8 chore(version): bump to v0.8.13
  • b74896c feat(celestial): add deletion support for vector snapshots and enhance history with snapshot counts
  • 928a67d feat(celestial): update default past hours to 6 for projection settings
  • 9d55b7c feat(observations): ensure tracker removal keeps locks free and improve safe shutdown handling
  • ab13978 feat(celestial): enable network fetch fallback for expired cache entries
  • 974f848 feat(celestial): introduce target key handling in tracking and celestial payloads
  • 972b7be fix(drone): replace deprecated --time flag with --timeout in container stop commands
  • 95159d4 feat(celestial): add ProjectionSelector component and integrate with topbar
  • 4e3d2ef feat(earthview): add azimuth support across translations and UI components
  • 133fd3a feat(observations): refine conflict handling and update logic for scheduled observations
  • 29d950c feat(celestial): ensure consistent target key replacement and enhance validation in catalog and tracking logic
  • ee98515 refactor(celestial): standardize projection bounds and enhance celestial scene state
  • c152fd4 refactor(observations): enhance observation status handling, runtime cleanup, and startup/shutdown transitions
  • f51fc94 fix(observations): fail when SDR is unhealthy
  • da4b4a1 feat(tracker): implement tracker cleanup and enhance removal logic
  • 71226f6 feat(celestial): add vector coverage timeline, API history fetch, and caching tests
  • e1feaa0 feat(celestial): canonicalize target keys and refactor related logic
  • 21d5641 feat(celestial): improve error handling for monitor and refresh actions
  • c015235 feat(celestial): add dynamic icons and improved catalog display for object types
  • 488f0f9 feat(celestial): integrate i18n support for ephemeris sync errors and general improvements
  • 739c318 feat(celestial): prevent duplicate monitor actions and refresh conflicts
  • 00da3bf feat(celestial): add centralized ephemeris sync status broadcast and UI updates
  • b73f926 feat(celestial): add shared runtime and persistent state management for ephemeris synchronization
  • e1aee0a refactor(celestial): improve button responsiveness, add compact action buttons, and enhance UI clarity
  • 744a986 fix(e2e): update button role selector in satellites spec for stricter matching
  • b9b7b25 feat(celestial): enhance ephemeris sync error handling and status reporting
  • 79ed9c7 feat(celestial): mark Earth as non-monitorable and update filtering logic
  • 69c8223 refactor(celestial): remove redundant cache refresh message handling logic
  • cd9f4ca feat(navigation): group admin satellite and celestial pages, add expandable navigation
  • e8bdc1d feat(celestial): add admin pages for monitoring celestial bodies and ephemeris synchronization
  • a448b4d feat(celestial): add Horizons circuit breaker and fallback handling
  • 398f474 feat(tasks): add timezone support and improve timestamp handling

Pull the Docker image:

For AMD64 systems:

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

For ARM64 systems (Raspberry Pi, etc):

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

Or pull architecture-specific tags directly:

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

# ARM64
docker pull ghcr.io/sgoudelis/ground-station:0.8.13-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 \
  ghcr.io/sgoudelis/ground-station:0.8.13
# 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 \
  ghcr.io/sgoudelis/ground-station:0.8.13

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 \
  ghcr.io/sgoudelis/ground-station:0.8.13
# 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 \
  ghcr.io/sgoudelis/ground-station:0.8.13

Note: Replace /path/to/data with your desired data directory path. 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

First startup note: On first run, it can take up to ~30 seconds after container startup for the frontend to become available.

You can watch startup progress with:

docker logs -f --tail=100 ground-station

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.8.13

# 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.8.12...v0.8.13

Don't miss a new ground-station release

NewReleases is sending notifications on new releases.