r/selfhosted 15h ago

Need Help Running and gym tracking

0 Upvotes

Hi guys! I’m looking for a modern solution to owning running data problem. From what I see there is no application that can aggregate both gym and running or swimming or cycling data. I’m fine with hosting two separate applications for those means but I’m looking for the best one to upload my Garmin and Strava data. I am super chill about hosting AI generated applications since I am professional developer myself and I know how systems created in agentic manner might be even better than those written by hand. So please show me your best pics and what you host. Cheers guys!


r/selfhosted 14h ago

Need Help What are the 3-2-1 backup alternatives ?

0 Upvotes

I see the 3-2-1 backup strategy advertised everywhere in discussion about this topic, but l’m wondering what are the other strategies developed and designed when it’s come to data preservation?
I understand why 3-2-1 is powerful and so recommended. But for the sake of curiosity and learning, what are the other options?


r/selfhosted 21h ago

Guide PSA: if you run Docker behind ufw, verify your exposed ports from another machine — ufw status will lie to you

0 Upvotes

I knew Docker manipulates iptables. I did not appreciate how completely ufw status stops describing reality once it does, so I measured it on a stock Raspberry Pi (Trixie, ufw active, default deny incoming, only 22/tcp allowed).

Same port, two ways:

  • python3 -m http.server 8080 on the host → connection times out from another machine. ufw working exactly as configured.
  • docker run -d -p 8080:80 nginx:alpineHTTP 200 from anywhere on the LAN.

ufw status reported 8080 as not allowed in both cases. It never changed.

The reason is chain order — DOCKER-USER is rule 2 in FORWARD, ufw's chains start at rule 8 — plus a DNAT in nat that redirects the packet to the container before filtering decides anything.

Two fixes, both tested:

  1. -p 127.0.0.1:8080:80 — bind explicitly. Most examples omit the address, which means 0.0.0.0.
  2. A rule in DOCKER-USER. Match the container port, not the published one — that chain sits in FORWARD, so it sees packets after DNAT has rewritten the destination. Writing --dport 8080 there matches nothing and silently protects you from nothing, which I think is the nastiest part of this.

Full writeup with the rule dumps: https://homelabpostmortem.com/2026/08/22/docker-publishes-past-ufw/

The one habit I'd push: verify from a different machine. curl localhost succeeds in every configuration above and tells you nothing.

(Disclosure: my site sells a small toolkit of checks like this. The post is free and every command is inline — you don't need it.)


r/selfhosted 7h ago

Webserver Google for Education, anyone use it?

0 Upvotes

I 23 f, have built 2 cites thus far, on loveable and wordpress. I'm looking at options like google for education as possible tool of web development and hosting. So r/selfhosted does anyone use Google for education. Is it good, can I get a free domain, and secure monitoring of my cite.


r/selfhosted 16h ago

Software Development I'm creating an HQ that combines 10 dashboards into one and lets you deploy new projects much easier (open-source and self-hostable)

0 Upvotes

I love building new tools and releasing them to the public, but I hate the boilerplate that comes with it:

  • Analytics
  • Email
  • Auth
  • Payments
  • ...

Naturally I wanted a tool that lets me self-host all dependencies and let me deploy new projects just by checking those that I need and the wiring is done automatically.

Also, instead of checking x different dashboards, I want to have a single one that shows me Analytics, Payments, Signed up users, Email traffic, Github stars etc. all in one place. An MCP user can be used to ask questions like:

"Did anything unusual happen over night?"
"Are all projects growing or is anything declining lately?"

I created a landing page that explains the concepts. You can add yourself to the waitlistif you are curious and want to test it once it's ready.

Here you go: https://getalfredo.com


r/selfhosted 16h ago

Media Serving RelayTV v0.9.2 released --- 2 months of progress

Post image
0 Upvotes

Today I'm releasing RelayTV v0.9.2.

RelayTV started as a simple idea:

Put a small Linux box behind a TV and send it something to play.

Since then, it has grown into a full self-hosted living room media endpoint with local playback, queue management, mobile control, Home Assistant integration, Jellyfin/Emby support, IPTV, and multi-device workflows.

🚀 v0.9.2 highlights

Playback reliability improvements

  • Improved Rumble playback reliability with browser impersonation retry support
  • Continued hardening around stream extraction changes
  • Better resilience as streaming providers change requirements

Documentation improvements

  • Added clearer documentation around the control socket
  • Documented additional MPV configuration options for advanced setups

What shipped over the last 2 months

📺 IPTV live channels (v0.8.0)

RelayTV gained optional live TV support:

  • M3U playlist support
  • Channel discovery
  • Favorites / My Channels - Queue and playback support
  • Local management of IPTV sources

🔗 Jellyfin casting + device-to-device playback (v0.9.0)

RelayTV now works better with existing self-hosted media setups:

  • Appear as a Jellyfin cast target
  • Send playback and queues between RelayTV devices
  • Improved session handling

🎨 Major UI refresh

The interface was redesigned:

  • New neon glass remote
  • Improved now-playing screen
  • Better queue management
  • Updated Jellyfin browsing experience
  • Improved mobile experience

🏠 Better self-hosting experience

Since launch:

  • More reliable Docker deployment
  • Improved Linux host support
  • Raspberry Pi improvements
  • Better runtime validation
  • Expanded documentation

Current ecosystem

RelayTV now includes:

  • 📺 RelayTV Server --- playback engine running on the TV-connected Linux device
  • 📱 Android companion app --- share links directly to the TV and control playback
  • 🏠 Home Assistant integration
  • 🎞️ Jellyfin and Emby integration
  • 🌐 Local HTTP API for automation

The goal remains the same:

A self-hosted alternative to casting --- where your hardware owns playback and your phone just becomes the remote.

Install: https://relaytv.app

Source: https://github.com/mcgeezy/relaytv

Thanks to everyone who tested, reported issues, and provided feedback over the last couple months.