PERRY

Platform / Infrastructure
2026

Containers
66 running · 12 projects
Load
2.66 · 16 cores
Memory
45 / 78 GB · 58%
Domains
47 · 8 visitors · 661 today
Storage
103.0 / 103.9 TB · 99%
Uptime
238d 6h 50m 57s
Network enp7s0 · hypervisor uplink · live · 2s
In
811 Kbps 138 pps
Out
630 Kbps 151 pps
Conntrack
675 / 262,144 0.26%
Transferred
33.0 TB in · 13.5 TB out

Live network throughput, updating every two seconds. Current inbound 811 Kbps, outbound 630 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.0 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 47 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, 66 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.