Files
miracles_in_motion/docs/deployment/PROXMOX_DEPLOYMENT.md
T
defiQUGandCursor e3a171c5ff Remove Azure deployment stack; Proxmox 7810 is canonical production.
Delete Static Web Apps workflow, Bicep infra, Azure Functions api/, SWA configs, and Azure-only scripts; document Proxmox deploy path and refresh QuickStart and prerequisites.

Co-authored-by: Cursor <[email protected]>
2026-06-15 19:41:08 -07:00

57 lines
1.8 KiB
Markdown

# MIM4U production deployment (Proxmox)
Production for **https://mim4u.org** is served from **VMID 7810** (mim-web-1 @ `192.168.11.37`) behind NPMplus. Azure Static Web Apps and Azure Functions are **not** used.
## Prerequisites
- Node.js 22.x, npm 10+
- ImageMagick (`convert`) for `npm run brand:export` (runs on `prebuild`)
- LAN SSH to Proxmox host **192.168.11.12** (r630-02)
- Sibling repo layout: `../proxmox` beside `miracles_in_motion`, or set `MIM_ROOT`
## Build and deploy
From the **proxmox** repo (operator LAN):
```bash
./scripts/mim4u-deploy-to-7810.sh
```
Or manually:
```bash
cd ~/projects/miracles_in_motion
npm run build
# then tar dist/ into VMID 7810 /var/www/html (see deploy script)
```
The deploy script **wipes** `/var/www/html/*` before extract to avoid stale PWA/JS bundles.
## Verify
```bash
curl -I -H 'Host: mim4u.org' http://192.168.11.37/
curl -I -H 'Host: mim4u.org' http://192.168.11.37/brand/logo-horizontal-nav.svg
```
Public HTTPS: NPMplus proxy hosts for `mim4u.org`, `www.mim4u.org`, `secure.mim4u.org`, `training.mim4u.org` → `192.168.11.37:80`.
## CI (GitHub Actions)
| Workflow | Trigger | Purpose |
|----------|---------|---------|
| `validate.yml` | Pull requests | type-check, tests, header WCAG audit, build |
| `deploy.yml` | Push to `main` | validate + GitHub Pages artifact (optional mirror) |
| `a11y-live.yml` | Weekly / manual | Lighthouse accessibility on live mim4u.org |
Canonical production traffic is **Proxmox 7810**, not GitHub Pages.
## API backend
`/api/*` on mim4u.org is proxied by nginx on **7810** to **VMID 7811** (mim-api-1 @ `192.168.11.36:3001`). API deployment is separate from this frontend repo.
## Related proxmox docs
- `docs/04-configuration/ALL_VMIDS_ENDPOINTS.md` — VMIDs and FQDNs
- `docs/04-configuration/E2E_ENDPOINTS_LIST.md` — public routing verification