Skip to content

v0.8.3

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Aug 18:35
· 2 commits to main since this release
73f5529

Docker Image

Version: 0.8.3
Environment: production
Git Commit: 73f5529
Build Date: 20260829

馃摉 View Project Documentation

Commits in this release:

  • 73f5529 fix(docker): switch frontend builder to Debian-based Node 22 to resolve npm ci issue
  • 19361e8 bump(version): update to 0.8.2
  • bfd43ff bump(version): update to 0.8.1 and improve frontend Docker build process
  • 7b87dce bump(version): update to 0.8.0
  • 02d39c1 feat(target): enhance citation handling with improved presentation and dialog
  • 9754ae1 feat(target): add responsive metric panels for better adaptability
  • 57c5970 fix(target): refresh focus signal on Solar System view transition
  • ce65371 feat(target): integrate TargetViewPicker component and enhance view customization options
  • 4369782 fix(celestial): allow display of negative elevations for live targets
  • 1a9f016 test(celestial): add unit tests for celestial slice and planetarium canvas
  • 26d9e19 fix(dashboard): handle unavailable satellite status for offline target slots
  • 34fde3f fix(recording): shorten start button label from "RECORD" to "REC"
  • e35c02c feat(dashboard): display app version and environment in expanded menu
  • 60e378a test(recording): add unit tests for recording-band drag behavior
  • 1a48196 fix(recording): simplify recording-band selection toggle enablement logic
  • d7f2038 feat(recording): add recording-band selection with draggable frequency offset
  • be9733a feat(passes): improve tag container layout and scrolling behavior
  • 2265ee8 feat(passes): improve pass status alignment and tag styling
  • e97a2e5 feat(passes): add transmitter link summaries, tooltips, and sorting support
  • 4f5a963 test: add unit tests for slice reducers, services, utilities, and controllers
  • 34b1b89 test(e2e): improve hardware rig page test stability by waiting for Socket.IO readiness
  • 161bb39 fix(playback): restrict inventory refresh to relevant recording actions
  • d4c3d80 fix(scheduler): remove redundant disabled prop from monitored-satellite dialog form control
  • 7852603 fix(recording): ensure recording overlay stays mounted with aria updates
  • e3dd63e feat(recording): add customizable IQ storage formats and decimation support
  • 82f0ef9 chore(store): persist user table density preference with whitelist update
  • 0344196 style(toast): adjust toast border radius for consistency with UI design
  • d036e95 feat(tlesync): expand CelesTrak group support and enhance URL handling
  • 2d8be3a feat(tlesync): enhance CelesTrak integration with canonical URLs, strict validation, and six-digit support
  • 392c9e0 test(accessibility): improve test reliability for tab navigation on home page
  • 940df21 feat(restore): implement memory-efficient full database restore with streamed SQL processing
  • 59bb341 feat(restore): increase full restore max file size to 1GB and adjust payload limits
  • 4e0afe5 feat(backup): add cancelable full database backup with progress tracking
  • e12bb7d feat(filebrowser): enable row click to show details in normal mode
  • 3cae0bf feat(tlesync): implement CelesTrak-specific safeguards and sync state tracking
  • 0fb380f update(images): refine satellite image workflow and update ID 25544 presets
  • 3c18fb2 update(images): refresh satellite images for ID 25544 across all resolutions
  • a243a24 update(images): refresh satellite images across multiple resolutions
  • c3fd42b update(images): refresh satellite images across multiple resolutions
  • 71ddabe remove: client-side target diagnostics and backend logging for crash reports
  • fcdc598 feat(target-diagnostics): add client-side crash reporting for target page
  • 3f9ec89 refactor(toasts): unify toast theming under ThemeProvider with improved cross-mode styles
  • e3490bc feat(sync): add cancel synchronization functionality with i18n support
  • b5ee25d refactor(filebrowser): replace Stack with Box for simplified layout in observation folder dialog
  • 171a301 feat(filebrowser): add grouped recording cards for observation bundles
  • 96d126a feat(Docker): add SDRplay RSP API v3.15 support for SoapySDRPlay3
  • 87b543f chore(frontend): update package-lock.json dependencies and adjust peer dependency flags
  • 0a50939 feat(decoders): replace SSDV decoder with Geoscan image decoder
  • c0b72ad feat(playback): enable playback of recordings from observation bundles
  • 47916bd feat(playback): decouple SigMF playback recordings from File Browser filters
  • e1f24d6 feat(decoders): add SSDV decoder support to scheduler dialogs with updated bandwidth defaults and parameters
  • d9f51be feat(decoders): add SSDV decoder for packetized image data and integrate across frontend and backend
  • 8654b27 feat(observations): skip bundle creation for disposable IQ-only tasks and add cleanup for empty bundles
  • a908864 refactor(filebrowser): remove hardcoded pipeline value and adjust chip visibility logic for observations
  • 26cb748 feat(observations): enhance bundle lifecycle management and UI integration
  • d9a2e5a feat(observations): add observation bundles, frontend dialog, and backend integration
  • ce8fd28 feat(waterfall): improve decoded packets drawer row mapping and adjust column widths
  • 59426c5 chore(version): bump to 0.7.19 and update release notes in README

Pull the Docker image:

For AMD64 systems:

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

For ARM64 systems (Raspberry Pi, etc):

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

Or pull architecture-specific tags directly:

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

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

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

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.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.7.19...v0.8.3