---
title: "A webes réteg a Vercelen"
description: "A Quire webes rétegének futtatása Vercelen, kiegészítő workerrel."
image: "https://docs.quirelms.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.quirelms.com/hu/llms.txt
> Use this file to discover all available pages before exploring further.

# A webes réteg a Vercelen

<span id="the-web-tier-on-vercel"></span>

A kialakítást a `docs/architecture/23-ops.md` 5. szakasza írja le. A Vercel csak a webes réteget futtatja. Minden más egy Ön által üzemeltetett kiegészítő hoston fut, és ez kötelező.

## Állapot ebben a kiadásban <!--quire:status-in-this-release-->

A konfiguráció rendelkezésre áll (`apps/web/vercel.json`, a `vercel` Nitro-előbeállítás és az indítási ellenőrzések). A Vercelnek megosztott fájltárolás kell (`QUIRE_STORAGE_DRIVER=s3` vagy `azure`), a függvénypéldányok között működő realtime driver (`QUIRE_REALTIME_DRIVER=sse` vagy `centrifugo`) és HTTP-s e-mail-szolgáltató. Ezek nélkül a webes réteg megtagadja az indulást, és a napló felsorolja a hiányzó beállításokat.

## Összetevők <!--quire:the-pieces-->

| Összetevő | Futási hely |
| --- | --- |
| `web` | Vercel Functions, Bun runtime: oldalak, REST, MCP, LTI, fogadott webhookok |
| `worker`, `scheduler`, `collab`, `content` | Kiegészítő host: Fly, Railway, ECS vagy saját Docker-host `docker/compose.yaml` fájllal |
| Postgres | Külső adatbázis, tranzakciós pooler mögött: Neon, Supabase vagy PgBouncerrel használt RDS |
| Fájlok | S3 vagy R2. Nincs tartós lemez |
| Háttérfeladatok | A kérés tranzakcióján belül pg-boss sorolja be őket, a kiegészítő worker futtatja. A kiegészítő worker `QUIRE_QUEUE_DRIVER=vercel` beállításával az egyszerű feladatok (nem sorrendhez kötött értesítések és webhook-kézbesítések) Vercel Queues-en (`VERCEL_QUEUE_REGION`, `VERCEL_QUEUE_TOKEN`) futnak, így a poolozott Postgres nem ellenőrzi őket folyamatosan |
| Ismétlődő feladatok | A kiegészítő scheduler. Nincs Vercel Cron-útvonal, mert a függvényben dolgozó cron időtúllépést okozhat |
| Nyomkövetés | OpenTelemetry a gyűjtőnek, `OTEL_EXPORTER_OTLP_ENDPOINT` |

## Amit ez a célkörnyezet nem tud <!--quire:what-this-target-cannot-do-->

Induláskor ellenőrzi ezeket, és minden problémát megnevezve elutasítja a konfigurációt; nem várja meg, hogy az első e-mail ne küldődjön el:

- **Nincs SMTP.** A Vercel blokkolja a kimenő SMTP-t. A `QUIRE_EMAIL_PROVIDER_CONFIG` értékét állítsa be HTTP-s szolgáltatóra (Postmark, SES, Mailgun, SendGrid vagy Resend). A `QUIRE_SMTP_URL` beállítás elutasított.
- **Nincs helyi lemez.** A `QUIRE_STORAGE_DRIVER=local` beállítás elutasított.
- **Nincs megosztott memória a hívások között.** A `QUIRE_REALTIME_DRIVER=inprocess` beállítás elutasított. A server-sent events működése a függvény időkorlátjáig tart; a kliens kurzorral csatlakozik újra, így az események nem vesznek el, de jelenléti állapot nincs.
- **A rögzített tenant-adatbázisok korlátozott számban használhatók**, nagyjából nyolcig, mert mindegyik újabb kapcsolatpoolt jelent egy olyan környezetben, ahol a poolok nem oszthatók meg.

## Üzembe helyezés <!--quire:deploying-->

1. Hozzon létre Vercel-projektet a tárolóból, `apps/web` **Root Directory** beállítással. Az `apps/web/vercel.json` állítja be a telepítési és buildparancsokat (`NITRO_PRESET=vercel`), és gyorsítótárazás nélkül szolgálja ki a `/sw.js` fájlt.
2. Állítsa be a környezeti változókat. A `docker/.env.example` alapján legalább ezek kellenek: `QUIRE_DEPLOY_TARGET=vercel`, `QUIRE_APP_ORIGIN`, `QUIRE_CONTENT_ORIGIN`, `QUIRE_PLATFORM_DOMAINS`, `QUIRE_SECRET_KEY`, `QUIRE_MASTER_KEY`, `DATABASE_URL` (a pooler címe), `QUIRE_REPORT_DATABASE_URL`, `QUIRE_AUDIT_DATABASE_URL`, `QUIRE_DATABASE_ID`, `QUIRE_EMAIL_PROVIDER_CONFIG`, `QUIRE_MAIL_FROM`, a tárolási beállítások, valamint a kiegészítő collab szolgáltatásra mutató `QUIRE_COLLAB_URL` és `QUIRE_COLLAB_SIGNING_KEY`.
   A `QUIRE_REPORT_DATABASE_URL` a `DATABASE_URL` által megadott fizikai adatbázishoz tartozik. Minden további regisztrált adatbázishoz adja hozzá a saját `quire_report` kapcsolati URL-jét a webes és worker-környezethez, majd regisztrálja a változó nevét `env:NAME` formában a platform konzolján. Ha hiányzik az adatbázis jelentési URL-je, az analitika biztonságosan leáll.
3. A kiegészítő hoston futtassa a `docker/compose.yaml` fájlt a `web` szolgáltatás nélkül, ugyanazzal a `docker/.env` fájllal:
   ```sh
   docker compose -f docker/compose.yaml up -d migrate init worker scheduler collab content
   ```
   A migrációk itt futnak le, mielőtt az egyes Vercel-telepítéseket élesíti.
4. Telepítsen. Hibás konfigurációnál a függvénynapló ezzel kezdődik: “The web tier did not start on vercel”, majd felsorolja a módosítandó beállításokat.

## Frissítés <!--quire:upgrading-->

Először migráljon a kiegészítő hostról, utána élesítse az új Vercel-telepítést, végül frissítse a kiegészítő workereket: a sorrendet az [upgrade.md](/hu/ops/upgrade/) ismerteti. A Vercel azonnali visszaállítása kódot állít vissza, és ugyanazon kiadáson belül mindig biztonságos.

Source: https://docs.quirelms.com/hu/ops/vercel/index.mdx
