My Self-Hosted Stack: Reclaiming Digital Autonomy
How I built my own cloud infrastructure and told Big Tech to fuck off
Introduction
Self-hosting isn’t just a technical choice — it’s a declaration of independence. I’ve built my own digital infrastructure because I refuse to be a product in someone else’s business model.
My Current Stack
*Core Infrastructure
Nginx Proxy Manager Plus: Handles SSL certificates, routing, and access control with a clean web interface- Clouflare Tunnels: Currently using cloudflare tunnels instead of NPMplus, This works best when stuck behind a cgnat.
- Tailscale: Zero-config VPN for secure access without exposing ports to the internet
Data and Collaboration
- Forgejo: Git hosting I actually control, with built-in CI/CD and issue tracking
- Nextcloud: Files, calendars, contacts, and collaborative document editing
- Immich: Photo and video backup that respects privacy and doesn’t feed data to ad algorithms
Media and Entertainment
- Jellyfin: Media server for movies, TV shows, and music I actually own, or at least have digital copies of.
- Beets: Music library management that ensures perfect metadata before importing to Jellyfin
Why This Matters
Control Over Convenience
- No algorithmic filtering deciding what I see
- No unexpected policy changes or service shutdowns
- No data mining or behavioral profiling
Long-term Thinking
- Data formats I control and understand
- No vendor lock-in or proprietary file formats
- Ability to migrate or backup at will
Security and Privacy
- Encryption I control, not a corporation
- No third-party access to personal data
- Transparent security practices
The Reality Check
Self-hosting isn’t free. It requires:
- Hardware investment: Servers, storage, and networking equipment
- Time commitment: Setup, maintenance, and troubleshooting
- Skill development: Learning Docker, networking, and system administration
- Responsibility: You’re the sysadmin, backup administrator, and security officer
But the alternative — renting digital space from corporations — comes with its own costs: loss of control, privacy violations, and the constant threat of service changes or shutdowns.
Getting Started
Phase 1: Foundation
- Repurpose old hardware or invest in a small server
- Install Docker and a reverse proxy
- Set up Tailscale for secure access
Phase 2: Essentials
- Deploy Nextcloud for files and collaboration
- Add Gitea for code hosting
- Configure automated backups
Phase 3: Enhancement
- Add media services (Jellyfin, Immich)
- Implement monitoring and alerting
- Fine-tune security and access controls
Philosophy
This isn’t about technical superiority — it’s about autonomy. Every service I run is a choice to keep control over my digital life. Some services might be less polished than their corporate counterparts, but they’re mine.
The goal isn’t to recreate every convenience the cloud offers, but to maintain control over what matters most: my data, my workflow, and my privacy.