---
title: "Vercel-en web-maila"
description: "Exekutatu Quireren web-maila Vercel-en eta worker laguntzaile batekin."
image: "https://docs.quirelms.com/og.png"
---

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

# Vercel-en web-maila

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

Diseinua `docs/architecture/23-ops.md` ataleko 5. atalean dago. Vercel-ek web-maila baino ez du exekutatzen. Gainerako guztia zuk kudeatutako ostalari laguntzaile batean exekutatzen da, eta ezinbestekoa da.

## Egoera bertsio honetan <!--quire:status-in-this-release-->

Konfigurazioa prest dago (`apps/web/vercel.json`, `vercel` Nitro aurrezarpena eta abiarazte-egiaztapenak). Vercel-ek fitxategi-biltegiratze partekatua behar du (`QUIRE_STORAGE_DRIVER=s3` edo `azure`), funtzio-instantzia guztietan dabilen denbora errealeko driver bat (`QUIRE_REALTIME_DRIVER=sse` edo `centrifugo`) eta HTTP posta-hornitzaile bat. Horiek gabe, web-mailak ez du abiatzea onartzen eta erregistroak falta den ezarpen bakoitza izendatzen du.

## Osagaiak <!--quire:the-pieces-->

| Osagaia | Non exekutatzen den |
| --- | --- |
| `web` | Vercel Functions, Node exekuzio-ingurunea: orrialdeak, REST, MCP, LTI eta jasotako webhook-ak |
| `worker`, `scheduler`, `collab`, `content` | Ostalari laguntzailea: Fly, Railway, ECS edo zure Docker ostalaria, `docker/compose.yaml` erabiliz |
| Postgres | Kanpokoa, transakzio-biltegi baten atzean: Neon, Supabase edo PgBouncer duen RDS |
| Fitxategiak | S3 edo R2. Ez dago disko iraunkorrik |
| Atzeko planoko lanak | pg-boss erabiliz ilaran jartzen dira eskaeraren transakzioan, eta worker laguntzaileak exekutatzen ditu. Worker laguntzailean `QUIRE_QUEUE_DRIVER=vercel` ezarrita badago, lan arinak (ordenarik gabeko jakinarazpen- eta webhook-bidalketak) Vercel Queues bidez doaz (`VERCEL_QUEUE_REGION`, `VERCEL_QUEUE_TOKEN`); horrela, Postgres partekatuari ez zaio lan horien bila galdetzen |
| Aldizkako lanak | Scheduler laguntzailea. Ez dago Vercel Cron biderik, funtzio batean lana egiten duen cron denbora-muga gainditzen duelako |
| Aztarnak | OpenTelemetry bidez zure biltzailera, `OTEL_EXPORTER_OTLP_ENDPOINT` |

## Helburu honek egin ezin duena <!--quire:what-this-target-cannot-do-->

Web-mailak abiaraztean egiaztatzen ditu hauek eta uko egiten die, bidali ez den lehen mezu elektronikoan beranduago huts egin ordez arazo bakoitza izendatuz:

- **Ez dago SMTPrik.** Vercel-ek irteerako SMTP blokeatzen du. Ezarri `QUIRE_EMAIL_PROVIDER_CONFIG` HTTP hornitzaile batekin (Postmark, SES, Mailgun, SendGrid edo Resend). `QUIRE_SMTP_URL` ez da onartzen.
- **Ez dago disko lokalik.** `QUIRE_STORAGE_DRIVER=local` ez da onartzen.
- **Deialdien artean ez dago memoria partekaturik.** `QUIRE_REALTIME_DRIVER=inprocess` ez da onartzen. Zerbitzariak bidalitako gertaerek funtzioaren denbora-muga dute gehienez; bezeroa kurtsore batekin berriz konektatzen da, gertaerarik galdu ez dadin, baina presentzia ez dago erabilgarri.
- **Maizterren datu-base finkatuen kopurua mugatua da**, zortzi ingurura, bakoitzak beste konexio-biltegi bat sortzen duelako, eta inguruneak ezin dituelako biltegiak partekatu.

## Zabaltzea <!--quire:deploying-->

1. Sortu Vercel proiektua biltegi honetatik, **Root Directory** gisa `apps/web` ezarrita. `apps/web/vercel.json` fitxategiak instalazio- eta eraikitze-komandoak (`NITRO_PRESET=vercel`) ezartzen ditu, eta `/sw.js` cacheatu gabe zerbitzatzen du.
2. Ezarri ingurune-aldagaiak. `docker/.env.example` fitxategitik, gutxienez: `QUIRE_DEPLOY_TARGET=vercel`, `QUIRE_APP_ORIGIN`, `QUIRE_CONTENT_ORIGIN`, `QUIRE_PLATFORM_DOMAINS`, `QUIRE_SECRET_KEY`, `QUIRE_MASTER_KEY`, `DATABASE_URL` (biltegiaren helbidea), `QUIRE_REPORT_DATABASE_URL`, `QUIRE_AUDIT_DATABASE_URL`, `QUIRE_DATABASE_ID`, `QUIRE_EMAIL_PROVIDER_CONFIG`, `QUIRE_MAIL_FROM`, biltegiratze-ezarpenak, eta zerbitzu laguntzailearen collab zerbitzura seinalatzen duten `QUIRE_COLLAB_URL` eta `QUIRE_COLLAB_SIGNING_KEY`.
   `QUIRE_REPORT_DATABASE_URL` `DATABASE_URL` aldagaian izendatutako datu-base fisikoari dagokio. Erregistratutako beste datu-base bakoitzerako, gehitu haren `quire_report` konexio-URLa webaren eta worker-aren inguruneetan, eta erregistratu ingurune-aldagaiaren izena plataformako kontsolan, `env:NAME` gisa. Datu-base horren txosten-URLa falta bada, Analytics-ek segurtasunez ukatzen du.
3. Ostalari laguntzailean, exekutatu `docker/compose.yaml` `web` zerbitzurik gabe, `docker/.env` bera erabiliz:
   ```sh
   docker compose -f docker/compose.yaml up -d migrate init worker scheduler collab content
   ```
   Migrazioak han exekutatzen dira, Vercel-en zabalkuntza bakoitza aktibo bihurtu aurretik.
4. Zabaldu. Konfigurazio bat ukatzean, funtzioaren erregistroa "The web tier did not start on vercel" testuarekin hasten da eta aldatu beharreko ezarpenak zerrendatzen ditu.

## Bertsio-berritzea <!--quire:upgrading-->

Migratu lehenik ostalari laguntzailetik, ondoren aktibatu Vercel-en zabalkuntza berria, eta azkenik eguneratu laguntzaileko worker-ak: jarraitu [upgrade.md](/eu/ops/upgrade/) gidako ordenari. Vercelen berehalako atzerapen bat kode-atzerapena da eta beti da segurua bertsio baten barruan.

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