Skip to content

Website on Edgible: chapters

The whole small-site stack on one machine, with nothing rented and nobody else holding the numbers.

A site, the analytics that tell you whether anyone read it, and the monitor that tells you when it broke. Bought separately those are three subscriptions and three companies with a copy of your traffic. Here they are three containers on a machine you already own, published on four HTTPS hostnames, with no port forwarded and no cloud host. The recurring cost is the electricity.

This is also the clearest demonstration that auth is a property of the hostname. The site is None, because strangers are the audience. The Umami dashboard and the Uptime Kuma interface are org, because you are. The Umami tracking script is None on a second hostname pointing at the same process as the dashboard, because a visitor's browser has to fetch it and will never have a login.

Each chapter is one job and one smoke test. Do them in order.

Chapters share a shape: a one-line hook under the title, then N.0 Why (what is missing without this chapter, and which machine you run it on), then N.1 The job (what you'll do, how you'll know, what you need, what this is not). Steps after that, a Verify checklist that mirrors Done when, and Next at the end.

Need first: Start here (serving device mini-pc, Hello World on the phone). Leave hello-world running. The guest wants 4 GB of memory by the time all three services are up.

# Chapter Smoke test
1 1. The site on the VM curl http://127.0.0.1:8080/ on the guest; nothing on the internet yet
2 2. Publish the site Phone (cellular) loads site.<org>.edgible.com, no login; optionally your own domain
3 3. Umami on the VM Heartbeat on 127.0.0.1:3000; default password changed
4 4. Publish Umami /script.js open on analytics.<org>…; dashboard behind org on umami.<org>…; a cellular visit appears
5 5. Uptime monitoring with Uptime Kuma Monitor green, then red when the site container stops, then green again
6 6. Tear down the website stack Four hostnames gone; nothing on 8080, 3000, 3001; hello-world and the serving agent left unless you opt in

Two limits are stated where they arise rather than glossed over: visitor country is unavailable to self-hosted analytics behind Edgible (4.5), and a monitor running on the machine it watches cannot report that machine going down (5.5).

Next guides: n8n on Edgible, OpenClaw on Edgible, LLM on Edgible.

Last updated