Skip to content

Lana (VPS)

The cloud VPS. Public IP 66.179.210.123, SSH-reachable at the vps host alias. Also on the tailnet as vps1 (100.115.215.23) — the only host in the tailnet that also offers itself as a Tailscale exit node.

  • ~7.7 GB RAM, shared across every service below — worth keeping in mind before adding anything heavy.
  • Docker Compose for everything, one directory per service, all defined in the vps-infra repo. See that repo’s own README for the deployment convention (docker compose up -d, never restart).

Everything public-facing goes through one of two paths:

  1. Docker apps behind a Cloudflare Tunnel — Gitea, Outline, LiteLLM, Open WebUI, Leantime, Plane, FlowViz, Windmill, and a few smaller services. No inbound ports are open for any of these; the Tunnel connects out to Cloudflare, and Access gates who can reach them.
  2. Static sites via Cloudflare Pages — spelvin.dev itself (this wiki’s landing page) and nothingwilts.com are not Docker containers here at all; they build and deploy straight to Cloudflare Pages from their own Gitea repos via Actions. Lana doesn’t serve their traffic.

There’s also a legacy path: a few services (historically anything not yet migrated) sat behind an on-box Caddy + Authelia SSO stack instead of the Tunnel. That migration to Cloudflare Access is in progress — see Services for the current per-app status, and don’t trust an app’s auth model without checking there first, since this is mid-migration.

Full current service list, ports, and auth model: Services.