12 practical guides
Self-Hosting Guides for Developers
Self-hosting means running your applications on infrastructure you manage, usually a rented VPS. Start with the learning order, then deploy a real application, secure the server, check it against the checklist, and practice recovering it.
Start here
How to Learn Self-Hosting as a Developer
Take one small app through the full cycle on a rented VPS. The order to learn self-hosting in, what to host first, and how to tell each stage is done.
Read the complete guide →Explore Self-Hosting
Browse all .NET guides →Learn and deploy
Learn the order, choose a platform, and take an application from a repository to a public HTTPS domain.
Secure the server
Close the ports Docker leaves open, patch and reboot on purpose, and check whether a new CVE affects you.
- Ubuntu Server Hardening Checklist for Docker Hosts
7 min read
- Docker Bypasses UFW: Why It Happens and How to Fix It
9 min read
- Cloud Firewall vs UFW: Which One Protects Your VPS?
6 min read
- Unattended Upgrades on Ubuntu: Patches, Reboots, and Docker
7 min read
- How to Check if Your Ubuntu Server Is Affected by a CVE
7 min read
- Do You Need Fail2ban? What It Catches on Ubuntu and Docker
8 min read
Operate and recover
Check the deployment, keep it safe to change, and prove you can restore its data.
From the newsletter
- Build Your Own VPN With Tailscale
Keep SSH, deployment panels, and databases off the public internet.
- The System Design Behind My New SaaS
How Katabench runs across a small fleet of servers managed with Dokploy.
- Self-Hosting at Home With Cloudflare Tunnel
Publish a service from home hardware without opening inbound ports.
- How I Migrated My Website to Cloudflare and Saved $228
A real migration, including moving nightly database backups to R2.
- Containerize Your .NET Applications Without a Dockerfile
Build the container image a deployment platform runs, using the .NET SDK.
Go deeper
Pragmatic Self-Hosting: Foundations
A self-hosting course that takes one application through provisioning, private administration, automated releases, and a backup restore on a single VPS.
See the self-hosting course →How to choose a self-hosting course →