PERRY

Platform / Infrastructure
2026

Containers
77 running · 12 projects
Load
2.31 · 16 cores
Memory
51 / 78 GB · 65%
Domains
53 · 16 visitors · 474 today
Storage
103.4 / 103.9 TB · 99%
Uptime
262d 5h 50m 39s
Network enp7s0 · hypervisor uplink · live · 2s
In
169 Kbps 48 pps
Out
277 Kbps 57 pps
Conntrack
524 / 262,144 0.20%
Transferred
35.0 TB in · 14.8 TB out

Live network throughput, updating every two seconds. Current inbound 169 Kbps, outbound 277 Kbps.

What actually runs this. Every number on this page comes from the machine it describes, and keeps updating while you read.

Hardware

Host
One machine — 16 cores, 78 GB — split into 8 virtual hosts. No cluster, no cloud.
Storage
103.4 of 103.9 TB used — 99% full.
Naming
Hosts are named for spacecraft and deep-sky objects: apollo, orion, nebula. Bastion is the exception, and it does what it says.

Edge

Proxy
nginx-proxy-manager terminates TLS for 53 domains and routes to containers on internal networks.
TLS
Let's Encrypt, renewed twice daily by cron with a forced monthly renewal as a backstop.
DNS
Cloudflare, with a catch-all script for bulk record management.

Runtime

Compose
12 projects here, 77 containers running across 4 hosts.
Deploys
Build and recreate. Never a restart — that silently reuses the old image.
Secrets
Per-project .env files at 0600, referenced by name. Nothing secret is committed.
Limits
Memory caps and log rotation are declared per project, with daemon-level defaults underneath.

Observability

Analytics
Visitor numbers come from parsing nginx access logs, not a tracking script — so ad blockers do not skew them.
This page
Every figure here is read from the machine it describes. Three collectors sample it and write JSON that this page reads; the browser refreshes them every two seconds. If a collector stops, the numbers dim rather than lie.

Backup

Databases
Nightly dumps with retention.
Cleanup
Daily image and volume pruning — the biggest reclaimer of disk on a box this size.

AI

Router
A self-hosted control plane routes model requests to whichever backend is healthy and capable, with fallback and full query logging.
Usage
Claude handles vision-based listing generation and signal analysis in the trading experiments.