Category

Self-hosted

18posts

13 min

Cloudflare Tunnel vs Tailscale Funnel vs Reverse Proxy + Port Forwarding: Who Dials Whom

Cloudflare Tunnel, Tailscale Funnel, and the classic reverse proxy with port forwarding all answer the same question, how does the internet reach a machine behind NAT, and they answer it differently: who dials whom. A sysadmin comparison of the three front doors, what each one actually is, what changes in the day-to-day, and where the honest choice lands.

11 min

Beszel vs Dockhand: One Watches the Server, One Runs the Containers

Beszel and Dockhand keep showing up in the same conversation about lightweight self-hosted tools, so people assume they compete. They do not: Beszel is a monitoring hub with historical data and alerts, Dockhand is a Docker management UI. A sysadmin comparison of the two, the measured footprint of each, and how both stack up against the common alternatives: Netdata, Grafana plus Prometheus, Glances, Uptime Kuma, and Dozzle.

14 min

Argo CD vs Flux: The GitOps Comparison After You Actually Operate Them

A hands-on, sysadmin comparison of Argo CD and Flux after operating both: bootstrap flows, Helm models, SOPS and age secret handling, multi-cluster architecture, drift detection defaults, image automation, disaster recovery, UI and API surface, and the repo structures that make each one click. With real commands and the honest limits.

15 min

Linux Watchdog: What It Is, When It Helps, and How to Set It Up

A sysadmin guide to the Linux watchdog timer: what the kernel watchdog device actually does, why a hardware watchdog and the softdog module are not the same thing, and five steps to arm it safely, from systemd RuntimeWatchdogSec and per-service WatchdogSec to the userspace watchdog daemon, with the tests that prove it fires before you need it.

8 min

Incus vs Docker: Containers That Look Similar but Solve Different Problems

Docker and Incus both run containers on the same Linux primitives, but they wrap the kernel mechanism in different abstractions: Docker packages an application, Incus launches a whole operating system. A theoretical comparison of application containers and system containers, the lifecycles each one assumes, and when each unit of management is the right one, with links to our Proxmox vs IncusOS coverage.

9 min

Immich vs Ente Photos: Self-Hosted and Encrypted Alternatives to Google Photos, Hands-On

After 90 days with self-hosted Immich, the remaining question was what else exists: Ente Photos, the end-to-end encrypted Google Photos alternative that is both a polished cloud service and a fully self-hostable server. A hands-on comparison of Immich, Ente cloud, and Ente self-hosted, with costs, family plans, referral terms, migration, and an honest decision rule.

12 min

mTLS for Internal Services: Useful Security or Homelab Theatre, Hands-On

mTLS authenticates both sides of an internal connection, which closes a real hole on a LAN full of devices, and it does not fix application bugs, stop a compromised service, or survive root on the host. A hands-on look at the threat model, client certificates with Caddy and Nginx, service mesh identity, and the mobile apps that cannot present a certificate.

10 min

Fail2ban vs CrowdSec: How They Block Malicious Traffic and When to Use Which

A practical, sysadmin-grade comparison of Fail2ban and CrowdSec: how each detects and blocks malicious traffic, the architecture that separates them (local log analysis vs community-shared intelligence), real configuration and commands, honest pros and cons, and when to run Fail2ban, CrowdSec, or both.

12 min

I Replaced Another SaaS Subscription with Self-Hosted Immich for 90 Days

After 90 days running self-hosted Immich instead of Google One for our family photos: what worked, what it actually costs, why your data finally stays on hardware you own, and the honest gaps that are still missing for families, straight from the project's own roadmap and issue tracker.