Docker Image
Version: 0.6.0
Environment: production
Git Commit: 2ecde82
Build Date: 20260617
Commits in this release:
- 2ecde82 feat: add SQLite concurrent write handling, retry logic, and logging configuration
- c0d4b30 test(e2e): update routes, retries, and timeout logic in Playwright tests
- a31be1c test(setup): add E2E interceptor for admin creation failure and retry scenarios
- 87e59a8 chore(deps): adjust peer dependencies and update package-lock entries
- 3c4ed88 chore(deps): update backend and frontend dependencies to latest versions
- a961665 chore(deps): update library dependencies to latest versions
- 5c04154 feat(auth): add HTTPS status indicator and guidance for login page
- 0991d7f feat(firsttime): re-enable CelesTrak default orbital sources during initial data population
- f341749 feat(setup): enhance setup mode UX and backend logic for admin recovery
- a3c0ed8 feat(auth): implement cookie-based authentication with session handling updates
- 01c4f74 feat(tasks): add task snapshot reconciliation to ensure state consistency
- 49344ca feat(socket): add reauthentication on API calls and disconnect invalid sessions
- c86bf31 feat(setup): add backend handlers and tests for setup finalization and status updates
- 4f255db refactor(setup): simplify save button label and adjust stepper margin
- 60f4056 fix(setup): handle null status tones and update setup wizard text validations
- c7b08a0 refactor(frontend): streamline runtime readiness checks with nullish coalescing
- 8dfdad2 feat(planetarium): add curve intensity and gradient display for pass visualization
- b553710 feat(planetarium): add minimum rotator elevation visualization
- 65b7148 feat(map-engine): introduce auto-switch for planetarium visibility based on satellite elevation
- bd932a1 feat(setup): enhance restore flow, improve scalability, and update UI feedback
- 883344e feat(e2e): add authentication flow tests for login and logout behavior
- c6ab3ed feat(e2e): add setup wizard tests and enhance location wizard helpers
- ee0128b feat(setup): defer orbital sync during setup wizard and enhance finalization
- 7a0c005 feat(setup): introduce SetupWizard component with location restore and admin setup wizard
- 50b4c1e chore(deps): bump zeroconf to 0.149.12 in requirements and pyproject.toml
- 8e12f92 feat(auth): add session longevity options and trim stale auth sessions
- 8abb7dc feat(auth): improve login screen layout and StationIdentityPanel flexibility
- d9db1ed feat(preferences): finalize integration key materialization for existing users
- b97f72a feat(preferences): materialize integration keys for existing users
- 0429a75 feat(auth,preferences): add end-to-end auth and user-scoped preferences
- 6d9ebf2 docs: remove note about disabled decoding features in README
- 4efaca5 refactor(e2e): unify map container selector in satellite tracking tests
Pull the Docker image:
For AMD64 systems:
docker pull --platform linux/amd64 ghcr.io/sgoudelis/ground-station:0.6.0For ARM64 systems (Raspberry Pi, etc):
docker pull --platform linux/arm64 ghcr.io/sgoudelis/ground-station:0.6.0Or pull architecture-specific tags directly:
# AMD64
docker pull ghcr.io/sgoudelis/ground-station:0.6.0-amd64
# ARM64
docker pull ghcr.io/sgoudelis/ground-station:0.6.0-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 \
ghcr.io/sgoudelis/ground-station:0.6.0# 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.6.0Option 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.6.0# 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.6.0Note: 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.6.0
# 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.5.2...v0.6.0