2 · HTTPS — your own domains¶
Put the WebUI and Platform API behind two hostnames with automatic TLS
(Traefik + Let's Encrypt, already part of the deploy). Until then everything
works over http://<MASTER_IP>:3000 / :8100 — HTTPS is required for
Stripe live mode and recommended for anything user-facing.
1. Point DNS at the master¶
Create two A records at your DNS provider, both pointing at the master's public IP — one for the app (WebUI) and one for the API:
| Type | Name | Content |
|---|---|---|
| A | app |
<MASTER_IP> |
| A | platform |
<MASTER_IP> |
2. Apply the routes (on master)¶
Pass your two hostnames as arguments — no file editing:
cd /opt/gridweave
sudo ./deploy/setup-https.sh app.example.com platform.example.com
Traefik + Let's Encrypt issue the certificate on the first request — allow ~30s.
https://app.example.com→ WebUIhttps://platform.example.com→ Platform API (use this asplatform_urlin the SDK)
3. Log in¶
Open https://app.example.com and paste the admin token (from the deploy
summary, or /opt/gridweave/deploy/.env) at the login page.
setup-https.shalso savesWEBUI_URL=https://app.example.comintodeploy/.envand recreates platform — so checkout redirects and the Stripe webhook use your domain with no manual.envediting (Stripe requirements).
Next: 3 · Users & credits — create accounts and load balances before running jobs.