De Konzept ass docs/architecture/23-ops.md Kapitel 5. Vercel féiert nemmen de Web-Tier. Alles aneres leeft op engem Begleedserver, deen Dir bedriwst, an en ass net optional.
Status an dëser Verëffentlechung
D’Konfiguratioun steet (apps/web/vercel.json, de vercel Nitro-Preset an d’Kontrollen beim Start). Vercel braucht gedeelt Späicherplatz fir Fichieren (QUIRE_STORAGE_DRIVER=s3 oder azure), en Realtime-Driver deen iwwer Funktiounsinstanzen hinne funktionéiert (QUIRE_REALTIME_DRIVER=sse oder centrifugo) an en HTTP-E-Mail-Ubidder. ouni se refuséiert de Web-Tier ze starten an seng Log nennt all fehlend Astellung.
En Begleedserver: Fly, Railway, ECS, oder Äre eegenen Docker-Server mat docker/compose.yaml
Postgres
Extern, hanner engem Transaktiounspooler: Neon, Supabase, oder RDS mat PgBouncer
Fichieren
S3 oder R2. Et gëtt kee permanenten Disk
Hannergrondjoben
Mat pg-boss bannendrem Transaktioun vum Demande an d’Queue geluecht, vum Begleed-Worker ausgefouert. Mat QUIRE_QUEUE_DRIVER=vercel op dem Begleed-Worker ginn déi liicht Joben (net sortéiert Noriichten- a Webhooks-Liwwerungen) iwwer Vercel Queues (VERCEL_QUEUE_REGION, VERCEL_QUEUE_TOKEN), sou datt de gepoolte Postgres net dofir ofgeruff gëtt
Widderhuelend Joben
De Begleed-Scheduler. Et gëtt keng Vercel-Cron-Route, well e Cron, deen Aarbecht bannendrem enger Funktioun mécht, Timeout kritt
Tracing
OpenTelemetry op Äre Sammler, OTEL_EXPORTER_OTLP_ENDPOINT
Wat dëst Deploy-Ziel net ka maachen
De Web-Tier kontrolléiert dëst beim Start a refuséiert et, mat all Problem, amplaz méi spéit bei der éischter E-Mail, déi ni geschéckt gëtt, ze feelen:
Kee SMTP. Vercel späiert SMTP eraus. Setzt QUIRE_EMAIL_PROVIDER_CONFIG
op en HTTP-Ubidder (Postmark, SES, Mailgun, SendGrid oder Resend).
QUIRE_SMTP_URL gëtt refuséiert.
Kee lokalen Disk.QUIRE_STORAGE_DRIVER=local gëtt refuséiert.
Keng gedeelt Gedächtnis tëscht Uriff.QUIRE_REALTIME_DRIVER=inprocess
gëtt refuséiert. Server-sent events sinn op den Timeout vun der Funktioun
gekappt; de Client verbënnt sech mat engem Cursor erëm, sou datt keen
Evenement verluer geet, mä Präsenz ass net verfügbar.
Festgeluechte Tenant-Datebanken sinn limitéiert op ronn acht, well all
eng aner Verbindingspool an enger Ëmwelt ass, déi keng Pools deelen kann.
Deploys
Erstellt e Vercel-Projet aus dem Repository mat Root Directoryapps/web. apps/web/vercel.json setzt d’Installatiouns- a
Build-Kommandoen (NITRO_PRESET=vercel) a servéiert /sw.js ouni Cache.
Setzt d’Ëmweltvariablen. Vue docker/.env.example op d’mannst:
QUIRE_DEPLOY_TARGET=vercel, QUIRE_APP_ORIGIN, QUIRE_CONTENT_ORIGIN,
QUIRE_PLATFORM_DOMAINS, QUIRE_SECRET_KEY, QUIRE_MASTER_KEY,
DATABASE_URL (d’Adress vum Pooler), QUIRE_REPORT_DATABASE_URL,
QUIRE_AUDIT_DATABASE_URL, QUIRE_DATABASE_ID,
QUIRE_EMAIL_PROVIDER_CONFIG, QUIRE_MAIL_FROM, d’Späicherestellungen,
an QUIRE_COLLAB_URL an QUIRE_COLLAB_SIGNING_KEY, déi op de
collab-Service vum Begleeder weisen.
QUIRE_REPORT_DATABASE_URL gehéiert zu der physikalescher Datebank, deen
DATABASE_URL nennt. Fir all zousätzlech registréiert Datebank füügt se
hir eegen quire_report-Verbindungs-URL un béid Web- a
Worker-Ëmweten derbäi, a registréiert dunn hiren Ëmweltvariablennumm als
env:NAME an der Konsol vun der Plangform. Analytics geet zou, wann d’Report-URL
vun där Datebank feelt.
Op dem Begleedserver féiert docker/compose.yaml ouni dem web-Service
aus, mam selwechten docker/.env:
Migratioune laufen do, ier en neien Vercel-Deploys an d’Produktioun bruecht gëtt.
Deployéiert. Bei enger refuséierter Konfiguratioun fänkt de
Funktiounslog mat “The web tier did not start on vercel” un a list all
Astellungen, déi geännert ginn.
Upgrade maachen
Migréiert éischte vum Begleedserver, bréngt dunn den neien Vercel-Deploys an d’Produktioun an dunn féiert d’Worker vum Begleeder nei aus: d’Reienfolleg an upgrade.md. En instant rollback bei Vercel ass e Code-Rollback a bannendrem enger Verëffentlechung ëmmer sécher.