Zero-Dependency Server Health Check in a Single Script

Sometimes you don’t need a full monitoring stack. You don’t need Prometheus, Grafana, or even Uptime Kuma. You just want to SSH into your server and see if everything’s okay in two seconds. That’s exactly what this script does. One file, zero dependencies, instant health report. What It Checks Check What You See 🖥 System Uptime and CPU load average 🧠 Memory Usage percentage with warnings 💾 Disk All mounted filesystems 🐳 Docker Every container — running or dead 🔌 Ports What’s listening and which process owns it 🔒 SSL Certificate expiry for your domains Everything is color-coded: green means good, yellow means warning, red means fix it now. ...

February 19, 2026 · 6 min · Self Host Setup

Running Ghostfolio: Self-Hosted Portfolio Tracker

Tracking investments usually means handing your financial data to apps like Mint, Robinhood, or Yahoo Finance. They know every stock you own, every trade you make, and every dollar in your portfolio. Then they monetize that data. Ghostfolio is an open-source, self-hosted wealth management app that tracks stocks, ETFs, crypto, and other assets — all on your own server. Beautiful dashboards, real-time quotes, and zero data sharing. Why Ghostfolio? Privacy — your portfolio data never leaves your server Multi-asset — stocks, ETFs, bonds, crypto, commodities, real estate Real-time quotes — automatic price updates via multiple data providers Portfolio analytics — allocation charts, performance over time, dividends Multi-currency — supports any currency, auto-converts Import/export — CSV import from brokers, full data export Multi-account — track multiple brokerage accounts separately Mobile-friendly — responsive PWA works great on phones Active development — regular releases with new features Prerequisites Docker and Docker Compose A server with at least 1GB RAM Optional: API key for premium data (free tier works fine for most users) Installation Step 1: Create the project directory mkdir -p ~/ghostfolio && cd ~/ghostfolio Step 2: Create docker-compose.yml services: ghostfolio: image: ghostfolio/ghostfolio:latest container_name: ghostfolio ports: - "127.0.0.1:3333:3333" environment: DATABASE_URL: postgresql://ghostfolio:${POSTGRES_PASSWORD}@postgres:5432/ghostfolio REDIS_HOST: redis REDIS_PORT: 6379 ACCESS_TOKEN_SALT: ${ACCESS_TOKEN_SALT} JWT_SECRET_KEY: ${JWT_SECRET_KEY} depends_on: postgres: condition: service_healthy redis: condition: service_started restart: unless-stopped postgres: image: postgres:16-alpine container_name: ghostfolio-db environment: POSTGRES_DB: ghostfolio POSTGRES_USER: ghostfolio POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - postgres-data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ghostfolio"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped redis: image: redis:7-alpine container_name: ghostfolio-redis restart: unless-stopped volumes: postgres-data: Step 3: Create the .env file # Generate secrets cat > .env << EOF POSTGRES_PASSWORD=$(openssl rand -hex 16) ACCESS_TOKEN_SALT=$(openssl rand -hex 32) JWT_SECRET_KEY=$(openssl rand -hex 32) EOF Step 4: Start it up docker compose up -d Step 5: Access the UI Open http://your-server-ip:3333 in your browser. ...

February 18, 2026 · 6 min · Self Host Setup

Setting Up Semaphore: Ansible UI for Home Server Automation

Ansible is the gold standard for server automation. But writing YAML playbooks and running them from the terminal gets old fast — especially when you manage multiple machines in your homelab. Semaphore is a modern web UI for Ansible. It lets you manage playbooks, track run history, schedule tasks, and share automation with your team — all from a clean browser interface. Think of it as “Ansible meets GitHub Actions” for your home server. ...

February 18, 2026 · 7 min · Self Host Setup

Self-Hosting Immich: The Best Google Photos Alternative in 2026

Google Photos changed everything when it launched with free unlimited storage. Then they killed it. Now every photo you take counts against your 15GB free tier, and upgrading to Google One means paying $3-10/month while Google trains AI on your family photos. Immich is the answer. It’s a free, open-source, self-hosted photo and video management platform that looks and feels like Google Photos — but runs on your hardware, with your data staying yours. ...

February 18, 2026 · 6 min · Self Host Setup

Docker Security Best Practices for Self-Hosters

Docker makes self-hosting easy. It also makes it easy to accidentally give an attacker root access to your entire server. Most self-hosting guides skip security entirely — here’s what they don’t tell you. 1. Never Run Containers as Root (When Possible) By default, processes inside Docker containers run as root. If an attacker escapes the container, they’re root on the host. Fix: Use the user directive: services: myapp: image: myapp:latest user: "1000:1000" Or in the Dockerfile: ...

February 18, 2026 · 5 min · Self Host Setup

How to Check Exposed Ports on Your Server (And Why You Should)

One of the most common security mistakes in self-hosting is accidentally exposing services to the internet. That Redis instance you spun up for testing? It might be listening on 0.0.0.0 with no password. Your database? Possibly reachable by anyone. Let’s fix that. Why Exposed Ports Matter Every open port is a potential entry point. Some services — like databases and cache servers — were never designed to be exposed publicly. They often have no authentication by default. ...

February 18, 2026 · 5 min · Self Host Setup

Best Reverse Proxy for Beginners: Nginx Proxy Manager vs Caddy vs Traefik

Choosing a reverse proxy is one of the first big decisions when self-hosting. It sits in front of all your services, handles SSL certificates, and routes traffic to the right container. Pick the wrong one and you’ll waste hours fighting configuration files. This guide compares the three most popular options — Nginx Proxy Manager, Caddy, and Traefik — from a beginner’s perspective. By the end, you’ll know exactly which one to start with. ...

February 17, 2026 · 9 min · Self Host Setup

Best VPS for Self-Hosting in 2026: Honest Comparison

Every self-hosting journey starts with the same question: where do I run my stuff? While a Raspberry Pi or old laptop works for tinkering, a VPS (Virtual Private Server) gives you a public IP, reliable uptime, and enough power to run dozens of services. But there are hundreds of VPS providers. This guide cuts through the noise and compares the six best options for self-hosters in 2026, based on what actually matters: price per performance, network quality, Docker support, and the little details that make daily management easier. ...

February 17, 2026 · 7 min · Self Host Setup

Running Changedetection.io: Website Change Alerts

Running Changedetection.io: Website Change Alerts You want to know when a product drops in price, when a job posting appears, when a government page updates, or when your competitor changes their pricing. You could check manually every day. Or you could let a self-hosted tool do it for you. Changedetection.io monitors any webpage and alerts you when something changes. It’s like Google Alerts, but for the actual visual content of any page — not just search results. ...

February 17, 2026 · 7 min · Self Host Setup

Self-Hosted VPN Showdown: WireGuard vs OpenVPN vs Tailscale

Remote access to your self-hosted services is essential. Whether you’re checking on your media server from a coffee shop or managing your homelab while traveling, a VPN creates a secure tunnel back to your network. But which VPN should you run? The three dominant options — WireGuard, OpenVPN, and Tailscale — take very different approaches. This guide compares all three so you can make the right choice for your setup. ...

February 17, 2026 · 8 min · Self Host Setup