Haustorium: Homelab Hosting Panel via Cloudflare Tunnel
Haustorium is a self-hosted panel that serves websites and a personal CDN from your homelab via Cloudflare Tunnel. No port forwarding, no cloud hosting bill.
A single admin panel that taps your homelab straight into the public internet. Point it at a folder, click a button, and your machine is serving a real website or a personal CDN from a public HTTPS URL: no port forwarding, no cloud hosting bill, no landlord.
What you can do
- Host static sites: point at files, get a running site, no nginx config in sight.
- Built-in CDN: a drag-and-drop file manager backed by a vendored Darium Cloud instance.
- Quick tunnels: instant *.trycloudflare.com URLs with zero configuration, for demos and testing.
- Named tunnels: a stable subdomain on your own domain, backed by a Cloudflare API token.
How it works
Two engines wearing one coat: a vendored Darium Cloud instance for storage, Cloudflare Tunnel for reach.
- Create a site: Haustorium spins up a static file server for it and gives you an upload area.
- Attach a tunnel: pick Quick (instant, random URL) or Named (your own domain), and Haustorium spawns and manages cloudflared for you.
- Files / CDN: the same idea, backed by the vendored Darium Cloud instance, for general file hosting outside any one site.
Key features
- One-click static hosting, and two tunnel modes: Quick Tunnels or Named Tunnels on your own domain.
- Built-in CDN and file manager: drag-and-drop uploads backed by Darium Cloud, no FTP client required.
- Encrypted secrets: a single admin account; Cloudflare tokens and internal credentials are encrypted at rest and never logged.
- One container: docker compose up and the panel, CDN engine and tunnel manager are live.
- Self-healing config: Darium Cloud's credentials are always resynced from Haustorium's own database.
- Live dashboard: storage usage, active tunnels and Darium's process log in one screen.
Tech stack
- Node.js 22.5+ (built-in node:sqlite), Express backend, vanilla HTML/CSS/JS panel UI, vendored Darium Cloud engine.
- Docker (one container), Cloudflare Tunnel / cloudflared, encrypted secrets at rest.
Quick start
- Docker (recommended): docker compose up -d
- Without Docker (needs Node.js 22.5+ and cloudflared on PATH): npm run install:all, then npm start
- Open http://<your-homelab-ip>:8080 and complete the first-run setup wizard.
License note
- Haustorium's own code is free for personal and non-commercial hobby use.
- Running it as a paid or revenue-generating service isn't covered by this license; commercial builds are available from HERMEiAS.
- The vendored Darium Cloud engine ships under its own Personal & Hobby Use License.
Frequently asked questions
What is Haustorium?
Haustorium is a self-hosted admin panel that puts your homelab on the public internet through Cloudflare Tunnel. It serves static websites and a personal CDN from a public HTTPS URL.
Can I host a website from home without port forwarding?
Yes. Haustorium serves your sites through Cloudflare Tunnel, so you don't need to forward ports on your router or pay for cloud hosting.
What is the difference between Quick and Named tunnels?
Quick Tunnels give you an instant *.trycloudflare.com URL with zero configuration, good for demos and testing. Named Tunnels give you a stable subdomain on your own domain, using a Cloudflare API token.
How do I install Haustorium?
Run docker compose up -d, or without Docker install Node.js 22.5+ and cloudflared and run npm run install:all then npm start. Then open http://<your-homelab-ip>:8080 and complete the setup wizard.
Is Haustorium free?
Haustorium is free for personal and non-commercial hobby use. For a paid or revenue-generating service, HERMEiAS can commission a commercial build.