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
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.
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
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
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.
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_URLDATABASE_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.
Ostalari laguntzailean, exekutatu docker/compose.yamlweb zerbitzurik gabe, docker/.env bera erabiliz:
Migrazioak han exekutatzen dira, Vercel-en zabalkuntza bakoitza aktibo bihurtu aurretik.
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
Migratu lehenik ostalari laguntzailetik, ondoren aktibatu Vercel-en zabalkuntza berria, eta azkenik eguneratu laguntzaileko worker-ak: jarraitu upgrade.md gidako ordenari. Vercelen berehalako atzerapen bat kode-atzerapena da eta beti da segurua bertsio baten barruan.