Docker Image
Version: 0.8.26
Environment: production
Git Commit: b0023ae
Build Date: 20261112
Commits in this release:
- b0023ae chore(version): bump to v0.8.26
- 73737bf test(setup-wizard): expect census opt-in switch to be enabled
- 7b45a74 feat(feedback): improve census opt-in settings card
- bfc774a feat(feedback): add localized settings translations
- 7ba3acb fix(feedback): derive reporting environment from deployment config
- 26236df feat(navigation): group system pages and route maintenance tabs
- 78fca5b feat(navigation): group system pages and route maintenance tabs
- 387f45a Pin browser tests to supported Ubuntu runner
- b6d23af Add opt-in installation census with disclosed country inference
- 555be8d i18n: complete and refine Chinese translations
- 272c1b6 fix(scheduler): preserve started observations during regeneration
Pull the Docker image:
For AMD64 systems:
docker pull --platform linux/amd64 ghcr.io/sgoudelis/ground-station:0.8.26For ARM64 systems (Raspberry Pi, etc):
docker pull --platform linux/arm64 ghcr.io/sgoudelis/ground-station:0.8.26Or pull architecture-specific tags directly:
# AMD64
docker pull ghcr.io/sgoudelis/ground-station:0.8.26-amd64
# ARM64
docker pull ghcr.io/sgoudelis/ground-station:0.8.26-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 \
-e GS_HTTP_PORT=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.26# ARM64 (Raspberry Pi, etc)
docker run -d \
--platform linux/arm64 \
--network host \
-e GS_HTTP_PORT=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.26Option 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.26# 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.26Port selection: In host-network mode, change
GS_HTTP_PORT=7000to your desired HTTP port, such asGS_HTTP_PORT=8080. Docker ignores-pin this mode. In bridge mode, change the host side of-p 7000:7000, such as-p 8080:7000; keep the container side at 7000. The backend remains on127.0.0.1:7001inside the container.
Note: Replace
/path/to/datawith your desired data directory path. For ARM64, using-v /dev:/devensures all USB devices are accessible.
After starting the container, access the web interface at http://<YOUR_HOST>:<HTTP_PORT> (7000 by default).
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.26
# Run the container again (use the appropriate command above for your architecture and retain your HTTP port choice)Multi-arch support:
This image supports linux/amd64 and linux/arm64 platforms. Docker will automatically pull the correct architecture for your system.
What's Changed
New Contributors
Full Changelog: v0.8.25...v0.8.26