Linux 6 guides

Linux16 min

Linux Package Management

APT, DNF and Pacman side by side: updates, installs, repositories and signing keys, holds, kept-back packages and the error messages that stop an upgrade.

Linux14 min

Nginx Web Server Setup

Set up Nginx on Ubuntu, Debian, Fedora or Arch: server blocks, Certbot HTTPS, reverse proxying, caching, security headers, rate limiting and troubleshooting.

Linux16 min

Raspberry Pi Setup Guide

Headless Raspberry Pi OS setup with Raspberry Pi Imager customisation, SSH keys, a fixed IP with NetworkManager, updates, basic hardening and Docker.

Linux18 min

Locking Down SSH: Keys, Configs, and Fail2Ban

Harden an OpenSSH server: key-only login, sshd_config settings checked with sshd -t, Ubuntu socket activation, and a Fail2Ban jail that works with journald.

Self-Hosting 6 guides

Self-Hosting12 min

AdGuard Home Deployment

Install AdGuard Home with Docker or the official script, set encrypted upstream DNS, use per-client rules, and fix port 53 conflicts with systemd-resolved.

Self-Hosting22 min

The Complete Self-Hosting Guide for 2026

A planning guide to self-hosting at home: hardware, power, operating system, Docker, networking, remote access, reverse proxy, backups and maintenance.

Self-Hosting11 min

Nextcloud Self-Hosted Cloud

Run Nextcloud in Docker Compose with MariaDB and Redis behind an Nginx reverse proxy with HTTPS, then set up background jobs, sync, backups and upgrades.

Self-Hosting12 min

Pi-hole Deployment Guide

Install Pi-hole v6 on Linux or in Docker, point your network at it, add blocklists and local DNS records, and fix port 53 and other common problems.

Self-Hosting22 min

Proxmox VE Setup Guide

Proxmox VE 9 setup guide: install, no-subscription repositories, VMs, LXC containers, storage, backups, VLANs, passthrough and migrating from VMware ESXi.

Self-Hosting13 min

TrueNAS Storage Setup

Set up TrueNAS Community Edition: hardware sizing, installation, ZFS pool layouts, datasets, SMB and NFS shares, snapshots, replication, scrubs and apps.

Networking 6 guides

Networking11 min

IPFire Firewall Setup

Install and configure the IPFire firewall: hardware needs, colour-coded zones, firewall rules, port forwarding, intrusion prevention, VPNs, updates and backups.

Networking19 min

Networking Fundamentals

Networking fundamentals for Linux users: IP addresses, RFC 1918 ranges, CIDR subnets, gateways, NAT, DNS, ports and DHCP, with a troubleshooting flow.

Networking13 min

OpenWrt Setup Guide

Install OpenWrt on a supported router: check the Table of Hardware, pick an image, set up LuCI, install packages (apk or opkg), upgrade and use failsafe mode.

Networking13 min

OPNsense Firewall Setup

Install OPNsense 26.7 on x86 or a VM, then set up firewall rules, VLANs, WireGuard, intrusion detection, Unbound DNS, Dnsmasq DHCP, updates and backups.

Networking12 min

RaspAP Wireless Access Point

Turn a Raspberry Pi into a Wi-Fi access point with RaspAP on Raspberry Pi OS trixie or bookworm: install, change defaults, add a VPN and fix problems.

Networking13 min

Linux Router Setup

Turn a Linux machine with two network interfaces into a router: netplan, IP forwarding, nftables firewall and NAT, dnsmasq DHCP and DNS, port forwarding, CAKE.

VPN 5 guides

VPN16 min

OpenVPN Cloud Deployment

Set up an OpenVPN server on an Ubuntu or Debian cloud VM with Easy-RSA certificates, UFW forwarding and NAT, client profiles, TCP 443 fallback and fixes.

VPN11 min

Pritunl VPN Deployment

Deploy a Pritunl VPN server: install Pritunl and MongoDB with the official commands, then set up organizations, users, servers, routes, WireGuard and backups.

VPN14 min

Tailscale Mesh VPN

Install Tailscale on Linux, macOS, Windows and phones, then set up MagicDNS, exit nodes, subnet routers, Tailscale SSH, access rules, Headscale and fixes.

VPN14 min

WireGuard Cloud Deployment

Set up a WireGuard VPN server by hand on an Ubuntu 22.04, 24.04 or 26.04 cloud VM: keys, wg-quick, forwarding and NAT, clients, and fixing handshakes.

VPN13 min

WireGuard-Easy Deployment

Deploy wg-easy v15 (WireGuard plus a web admin panel) with Docker Compose, put the admin panel behind HTTPS, add clients, and back up and update it safely.

Docker 6 guides

Docker11 min

Docker Compose: Multi-Container Apps

Run a web app and its PostgreSQL database with Docker Compose: compose.yaml line by line, .env files, healthchecks, startup order, updates and overrides.

Docker13 min

Docker Installation Guide

Install Docker Engine and the Compose plugin from Docker's repositories on Ubuntu, Debian, Fedora, RHEL and CentOS Stream, with non-root access and cleanup.

Docker10 min

Docker Networking Explained

How Docker networking works: the default bridge, user-defined networks and DNS, publishing ports safely, why published ports bypass ufw, and a proxy layout.

Docker10 min

Hardening Docker Containers

Reduce what a compromised container can do: protect the Docker socket, run as non-root, drop capabilities, use a read-only filesystem and set resource limits.

Docker11 min

Docker Volumes and Backups

Back up and restore Docker data properly: volumes versus bind mounts, consistent database dumps, volume archives, scheduled backups and a tested restore.

Docker11 min

Dockerfile Best Practices

Write Dockerfiles that build fast and produce small, safe images: layer caching, .dockerignore, pinned bases, multi-stage builds, non-root users and secrets.

Monitoring 7 guides

Monitoring11 min

Blackbox Exporter Probes

Probe websites, ports and DNS from outside with the Prometheus Blackbox Exporter: modules, the relabelling scrape config, certificate and downtime alerts.

Monitoring11 min

Container Metrics with cAdvisor

Record CPU, memory, network and disk use for every Docker container with cAdvisor and Prometheus: lean setup, PromQL, limit and throttling alerts, Grafana.

Monitoring12 min

Grafana Loki Deployment

Run Grafana Loki 3 with Grafana Alloy and Grafana in Docker Compose: a TSDB schema v13 config, host and container log collection, LogQL, retention and alerting.

Monitoring11 min

Linux Performance Monitoring

Find out why a Linux server is slow: load average, vmstat, CPU per core and process, memory pressure, disk latency with iostat, network errors and sar history.

Monitoring15 min

Prometheus Grafana Monitoring

Monitor a Docker host with Prometheus, node_exporter, cAdvisor, Alertmanager and Grafana in Compose: validated configs, alert rules, notifications and backups.

Monitoring11 min

SMART Disk Health Monitoring

Read SMART data from hard drives and NVMe SSDs with smartctl, know which attributes signal trouble, schedule self-tests and alerts with smartd.

Monitoring11 min

Uptime Kuma Uptime Monitoring

Run Uptime Kuma with Docker Compose, pick the right monitor types, catch silent cron and backup failures with push monitors and publish a status page.

AWS 6 guides

AWS18 min

AWS EC2 Deployment Guide

How to deploy an application to an existing AWS EC2 instance — code transfer, process managers, reverse proxy configuration, and keeping it running reliably.

AWS16 min

Launch Your First EC2 Instance

Launch your first EC2 instance on AWS, restrict SSH to your IP, connect with a key pair and install Nginx, with current Free Tier notes and cleanup.

AWS20 min

Secure Your AWS Account with IAM

Secure an AWS account with root MFA, IAM Identity Center or an admin user, least-privilege policies, roles over access keys, CloudTrail and budget alerts.

AWS20 min

Your First Serverless Lambda Function

Create your first AWS Lambda function and deploy serverless computing. Learn with practical examples, real-world triggers, and Python deployment patterns.

AWS15 min

Host a Static Website on AWS (The Right Way)

Serve a static site from a private S3 bucket through CloudFront with Origin Access Control, HTTPS and Route 53, then automate deploys and tear it down.

AWS24 min

Build a 3-Tier VPC Architecture

Build a 3-tier AWS VPC by hand: public, app and data subnets across two AZs, route tables, NAT gateway, ALB, NACLs, Session Manager and Flow Logs.

IoT 8 guides

IoT13 min

ESP32 Deep Sleep on Battery

Run an ESP32 sensor on batteries for months: what deep sleep keeps, a realistic power budget, a fast-wake Arduino sketch, ESPHome and measuring current.

IoT11 min

ESPHome: Your First Device

Build an ESP32 climate sensor with ESPHome: write the YAML, flash over USB, read the logs, add it to Home Assistant or MQTT and update it over Wi-Fi.

IoT10 min

Home Assistant in Docker

Run Home Assistant Container with Docker Compose: when to pick it over Home Assistant OS, host networking, a reverse proxy, Zigbee USB, backups and updates.

IoT11 min

Mosquitto MQTT Broker Setup

Install the Mosquitto MQTT broker on Linux or Docker, replace anonymous access with per-device passwords and ACLs, design topics, add TLS and test each step.

IoT11 min

Raspberry Pi GPIO with Python

Control LEDs, buttons, PWM, relays and sensors from Python on any Raspberry Pi, including the Pi 5, with gpiozero: wiring, callbacks and running as a service.

IoT16 min

WLED Smart LED Controller

Set up WLED 16 on an ESP32 LED strip controller: power budget, wiring, flashing with the web installer or esptool, Wi-Fi, lock-down settings and Home Assistant.