Foundations

38 guides covering the fundamentals of self-hosting. Docker, Linux, networking, reverse proxies, backups, and security — everything you need to get started.

Backup Strategy: The 3-2-1 Rule

Protect your self-hosted data with the 3-2-1 backup rule — three copies, two media types, one offsite. Complete guide.

·

Docker Compose Basics for Self-Hosting

Learn Docker Compose fundamentals — services, volumes, networks, and environment variables for running self-hosted apps.

·

Docker Networking for Self-Hosting

Understand Docker bridge networks, host networking, container DNS, and inter-container communication for self-hosted apps.

·

Docker Volumes and Persistent Data

Master Docker volumes, bind mounts, and data persistence — keep your self-hosted app data safe across container updates.

·

Getting Started with Self-Hosting

Everything you need to start self-hosting — hardware, software, your first app, and the mindset shift from cloud to self-hosted.

·

Reverse Proxy Setup for Self-Hosting

Set up Nginx Proxy Manager, Traefik, or Caddy as a reverse proxy with automatic SSL for your self-hosted apps.

·

SSH Setup and Security for Self-Hosting

Secure your self-hosted server with SSH key authentication, hardened config, and essential security practices.

·

DNS Explained for Self-Hosting

Understand how DNS works and how to configure it for your self-hosted services — A records, CNAME, split DNS, and local resolution.

·

Firewall Setup with UFW

Set up UFW (Uncomplicated Firewall) on your Linux server to control network access and secure your self-hosted services.

·

SSL Certificates for Self-Hosting

How SSL/TLS certificates work, how to get free certificates with Let's Encrypt, and how to set up HTTPS for your self-hosted services.

·

Fail2ban Setup for Self-Hosting

Install and configure fail2ban to protect your self-hosted server from brute-force attacks on SSH, web apps, and Docker services.

·

Linux Basics for Self-Hosting

Essential Linux commands and concepts every self-hoster needs — file navigation, package management, process control, and system administration.

·

Cron Jobs for Self-Hosting

Set up cron jobs on Linux to automate backups, updates, cleanup, and maintenance tasks for your self-hosted server and Docker containers.

·

Linux File Permissions for Self-Hosting

Understand Linux file permissions, ownership, and access control — essential knowledge for managing Docker volumes and self-hosted services.

·

Systemd Services for Self-Hosting

Learn how to create, manage, and troubleshoot systemd services on Linux — essential for running self-hosted apps that start on boot.

·

Network Ports Explained for Self-Hosting

Understand network ports, common port numbers, Docker port mapping, and how to avoid conflicts when running multiple self-hosted services.

·

Static IP and DHCP for Self-Hosting

Configure a static IP address on your Linux server and understand DHCP — essential for reliable self-hosted services that don't change addresses.

·

Docker Environment Variables Explained

Master Docker environment variables — .env files, docker-compose.yml syntax, secrets management, and best practices for self-hosted services.

·

VLANs and Subnets for Self-Hosting

Understand VLANs, subnets, and network segmentation for your homelab — isolate IoT devices, secure self-hosted services, and organize traffic.

·

Dockerfile Basics for Self-Hosting

Learn Dockerfile fundamentals — build custom images, extend existing containers, and create reproducible self-hosted service deployments.

·

Disaster Recovery for Self-Hosting

Plan and test disaster recovery for your homelab — restore from backups, handle disk failures, and get self-hosted services back online fast.

·

Home Server Cost Breakdown

How much does self-hosting actually cost? A detailed breakdown of hardware, electricity, and internet costs vs cloud subscriptions you replace.

·

Port Forwarding for Self-Hosting

Set up port forwarding on your router to access self-hosted services from the internet — plus safer alternatives like Cloudflare Tunnel.

·

Dynamic DNS Setup for Self-Hosting

Set up Dynamic DNS so your domain always points to your home server, even when your ISP changes your public IP address automatically.

·

Updating Docker Containers Safely

How to update self-hosted Docker containers without losing data — manual updates, Watchtower automation, rollback strategies, and best practices.

·

Monitoring Your Home Server

Set up monitoring for your self-hosted server — track uptime, resource usage, and get alerts when services go down or disks fill up.

·

Docker Troubleshooting Guide

Fix common Docker and Docker Compose problems — container won't start, port conflicts, permission errors, networking issues, and more.

·

Why Self-Host? The Case for Owning Your Data

The practical reasons to self-host your services — data ownership, cost savings, privacy, no vendor lock-in, and learning valuable skills.

·

Docker Security Best Practices

Secure your Docker containers and self-hosted services — run as non-root, limit capabilities, manage secrets, and harden your Docker daemon.

·

Choosing a Linux Distro for Self-Hosting

Compare Ubuntu, Debian, Fedora, and other Linux distributions for your self-hosted server — stability, Docker support, and community resources.

·

Docker Container Logging Guide

Manage Docker container logs effectively — view logs, configure rotation, centralize with Loki, and debug issues in your self-hosted services.

·

RAID Explained for Self-Hosting

Understand RAID levels for your home server — RAID 0, 1, 5, 6, 10, and ZFS. Which to use, which to avoid, and why RAID isn't a backup.

·

Cloudflare Tunnel Setup Guide

Expose self-hosted services to the internet securely with Cloudflare Tunnel — no port forwarding, free DDoS protection, and automatic HTTPS.

·

Encrypted DNS: DoH, DoT, and DoQ Explained

Understand DNS-over-HTTPS, DNS-over-TLS, and DNS-over-QUIC — what they are, why they matter, and how to set them up for self-hosting.

·

Tailscale Setup for Self-Hosting

Set up Tailscale to securely access your self-hosted services from anywhere — zero port forwarding, automatic encryption, and easy device mesh.

·

Two-Factor Authentication for Self-Hosting

Set up 2FA for your self-hosted apps — TOTP, WebAuthn, and passkeys explained with practical setup steps and recovery strategies.

·

Nginx Proxy Manager Setup Guide

Install and configure Nginx Proxy Manager with Docker — the easiest reverse proxy for self-hosting with automatic SSL and a web-based GUI.

·

WireGuard VPN Setup for Self-Hosting

Set up WireGuard VPN on your server for encrypted remote access to your self-hosted services — fast, modern, and simple to configure.

·