Files
wild-directory/syncthing-relay
Paul Payne 4d983819c9 feat(supabase): add services and statefulset for database management
feat(synapse): update ingress to use traefik ingress class and bump version

feat(syncthing-discovery): introduce syncthing discovery service with deployment and ingress

feat(syncthing-relay): add syncthing relay server with deployment and ingress configuration

fix(taiga): update liveness and readiness probes to use tcpSocket for health checks

fix(taiga): change PVC access mode to ReadWriteMany for media and static storage

feat(traefik): add icon and ignore rules for traefik service

docs(ushahidi): add notes for Redis configuration and Laravel startup probe adjustments

feat(ushahidi): implement dedicated Redis deployment for Ushahidi

fix(vllm): update deployment strategy and readiness/liveness probes for improved stability

fix(writefreely): pin writefreely image version to v0.15.1 for consistency

docs(zulip): add notes for TLS-terminating reverse proxy configuration and expected behavior
2026-07-02 21:34:27 +00:00
..

Syncthing Relay Server

strelaysrv relays encrypted Syncthing traffic between devices that cannot connect directly (e.g. both behind NAT).

Bandwidth warning

Unlike the discovery server, the relay proxies all sync traffic. Every byte synced between clients who cannot connect directly flows through your Wild Central device and your internet connection. On a home or community internet connection, heavy use by multiple members syncing large files can saturate your upstream bandwidth.

Deploy this only if you know your members need relay support and your connection can handle it. If members can connect directly, the relay is never used.

Network setup

Port 22067 (TCP) must be forwarded on your router to the relay's LoadBalancer IP. Check the assigned IP with:

kubectl get svc -n syncthing-relay syncthing-relay

Set externalAddress in your app config to your-domain-or-ip:22067 so the relay advertises the correct public address.

Privacy

This relay is configured as private (not registered with the Syncthing global relay pool). Only Syncthing clients that explicitly add your relay URL will use it. The relay operator can see which device IDs are connecting and data volumes, but not file contents — traffic is end-to-end encrypted between Syncthing clients.

Syncthing client configuration

Add the relay URI in Syncthing settings under Settings → Connections → Relays:

relay://your-domain:22067

Status

The relay status page is available at https://{{ domain }}/status.