HaloRT mengisolasi setiap komunitas sebagai tenant. Data bisnis dibatasi tenant_id di MariaDB via Prisma di platform API.

Resolusi tenant (API)

Urutan kasar di plugin tenant:

  1. Header X-Halort-Tenant-Slug
  2. Slug subdomain dari Host ({slug}.halort.com atau .halort.test)
  3. Lookup domain kustom
  4. Fallback dev TENANT_SLUG

Platform web mencerminkan ini dengan Host + X-Halort-Tenant-Slug dan NEXT_PUBLIC_TENANT_SLUG untuk fallback lokal. Aplikasi mobile mengirim header / env yang sama (HALORT_TENANT_SLUG).

Host central vs tenant

Central (tanpa konteks komunitas): app.halort.com, admin.halort.com, api.halort.com, www.halort.com, halort.com, plus design/docs/notifications.

Tenant: {slug}.halort.com → situs publik platform-web untuk komunitas tersebut. DNS wildcard *.halort.com sudah mengarah ke ingress LB; host reserved persis (docs, design, …) menang via objek Ingress masing-masing.

Env knobs: HALORT_DOMAIN, HALORT_CENTRAL_DOMAINS.

Onboarding

  1. Pengunjung mendaftarkan komunitas di marketing /daftar (Surfaces/Marketing Web)
  2. Super-admin meninjau di admin.halort.com
  3. Persetujuan mem-provision tenant dan menambahkan {slug}.halort.com ke Ingress platform-web

Terkait