2.6 KiB
2.6 KiB
Matrix/Conduit Prerequisites
Issue: #183
Target Host Requirements
Option A: Deploy on Hermes VPS (143.198.27.163)
- Pros: Existing infrastructure, Ezra home territory
- Cons: Already hosting multiple wizards, resource contention
- Ports available: Need to verify 443, 8448 free or proxyable
Option B: Deploy on Allegro (167.99.126.228)
- Pros: Separate host from Hermes, already has Nostr relay
- Cons: Allegro-Primus runs there; check resource headroom
Option C: New VPS
- Pros: Clean slate, dedicated resources
- Cons: Additional cost, new maintenance surface
Recommended: Option A (Hermes) or dedicated lightweight VPS
Required Ports
| Port | Protocol | Purpose | Visibility |
|---|---|---|---|
| 443 | TCP | Client HTTPS (Caddy/Nginx → Conduit) | Public |
| 8448 | TCP | Server-to-server federation | Public |
| 6167 | TCP | Conduit internal (localhost only) | Localhost |
| 80 | TCP | ACME HTTP challenge (redirects to 443) | Public |
DNS Requirements
# A record
matrix.timmy.foundation. A <SERVER_IP>
# Optional: subdomains for federation delegation
_timatrix._tcp.timmy.foundation. SRV 10 0 8448 matrix.timmy.foundation.
Host Software
# Docker + Compose (required)
docker --version # >= 24.0
docker compose version # >= 2.20
# Or install if missing:
curl -fsSL https://get.docker.com | sh
Reverse Proxy (choose one)
Option 1: Caddy (recommended for automatic TLS)
apt install caddy # or use official repo
Option 2: Nginx (if already deployed)
apt install nginx certbot python3-certbot-nginx
TLS Certificate Requirements
- Valid domain pointing to server IP
- Port 80 open for ACME challenge (HTTP-01)
- Or: DNS challenge for wildcard/internal domains
Storage
| Component | Minimum | Recommended |
|---|---|---|
| Conduit DB | 5 GB | 20 GB |
| Media uploads | 10 GB | 50 GB+ |
| Logs | 2 GB | 5 GB |
Missing Prerequisites (Blocking)
- Target host selected — Hermes vs Allegro vs new
- Domain/subdomain assigned — matrix.timmy.foundation?
- DNS A record created — pointing to target host
- Ports verified open — 443, 8448 on target host
- Reverse proxy decision — Caddy vs Nginx
- SSL strategy confirmed — Let's Encrypt via proxy
Next Steps After Prerequisites
- Fill in
conduit.tomlwith actual domain - Put admin registration secret in
.env - Run
./deploy-matrix.sh - Create first admin account
- Create fleet rooms