Railway cloud hub bootstrap
Recipe 1 — cloud hub: experimental mqtt + central + web on Railway private networking (linux/amd64). Field protocol stays off the cloud host. OT edges may publish MQTTS into this hub optionally; Recipe 2 can also run broker-free local ingest. Not a claim of public-internet production hardening.
Order
- Attach persistent volume at central
/workspace - Set unique
OPENFDD_JWT_SECRET,OPENFDD_ADMIN_PASSWORD,OPENFDD_AGENT_PASSWORD - Deploy central → healthy
GET /api/health - Deploy mqtt (hub)
- Deploy web with
OPENFDD_CENTRAL_UPSTREAM=openfdd-central…:8080(nohttp://)
Pin tip images
Always newest-by-created sha-* (never assume :nightly is tip):
./scripts/ghcr_newest_by_created.py openfdd-central openfdd-web openfdd-mqtt
# then pin OPENFDD_IMAGE_TAG=sha-<7> and recreate
Agent ops (CLI): openfdd-railway-cli skill · full guide in-repo docs/operations/RAILWAY_DEPLOYMENT.md.