Mae’r dyluniad yn adran 5 o docs/architecture/23-ops.md. Dim ond y
haen we mae Vercel yn ei rhedeg. Mae popeth arall yn rhedeg ar host cydymaith rydych yn ei weithredu, ac nid yw’n
opsiynol.
Statws yn y datganiad hwn
Mae’r ffurfweddiad ar waith (apps/web/vercel.json, rhagosodiad Nitro vercel
a’r gwiriadau cychwyn). Mae angen storfa ffeiliau a rennir ar Vercel
(QUIRE_STORAGE_DRIVER=s3 neu azure), gyrrwr amser real sy’n gweithio ar draws instansiau
swyddogaeth (QUIRE_REALTIME_DRIVER=sse neu centrifugo) a darparwr e-bost HTTP. Hebddynt mae’r haen we yn gwrthod cychwyn ac mae ei log
yn enwi pob gosodiad sydd ar goll.
Host cydymaith: Fly, Railway, ECS, neu eich host Docker eich hun gyda docker/compose.yaml
Postgres
Allanol, y tu ôl i bwlwr trafodion: Neon, Supabase neu RDS gyda PgBouncer
Ffeiliau
S3 neu R2. Nid oes disg barhaol
Gwaith cefndir
Wedi’u ciwio gan pg-boss o fewn trafodiad y cais, a’u rhedeg gan y worker cydymaith. Gyda QUIRE_QUEUE_DRIVER=vercel ar y worker cydymaith, mae’r gwaith ysgafn (hysbysiadau heb drefn a dosbarthiadau webhook) yn mynd drwy Vercel Queues (VERCEL_QUEUE_REGION, VERCEL_QUEUE_TOKEN), felly ni pholir Postgres pwl ar eu cyfer
Gwaith rheolaidd
Y scheduler cydymaith. Nid oes llwybr Vercel Cron, oherwydd mae cron sy’n gwneud gwaith y tu mewn i swyddogaeth yn cyrraedd ei therfyn amser
Olrhain
OpenTelemetry at eich casglwr, OTEL_EXPORTER_OTLP_ENDPOINT
Beth na all y targed hwn ei wneud
Mae’r haen we yn gwirio’r rhain wrth gychwyn ac yn gwrthod, gan enwi pob problem,
yn hytrach na methu’n ddiweddarach pan na chaiff yr e-bost cyntaf erioed ei anfon:
Dim SMTP. Mae Vercel yn rhwystro SMTP sy’n mynd allan. Gosodwch QUIRE_EMAIL_PROVIDER_CONFIG
i ddarparwr HTTP (Postmark, SES, Mailgun, SendGrid neu Resend).
Gwrthodir QUIRE_SMTP_URL.
Dim disg lleol. Gwrthodir QUIRE_STORAGE_DRIVER=local.
Dim cof a rennir rhwng galwadau. Gwrthodir QUIRE_REALTIME_DRIVER=inprocess.
Mae digwyddiadau a anfonir gan y gweinydd wedi’u cyfyngu i derfyn amser y swyddogaeth; mae’r
cleient yn ailgysylltu gyda chyrchwr, felly ni chollir digwyddiad ond nid yw presenoldeb
ar gael.
Mae cronfeydd data tenantiaid wedi’u pinio’n gyfyngedig i tua wyth, oherwydd bod pob un yn
bwl cronfa ddata arall mewn amgylchedd na all rannu pyllau.
Defnyddio
Crëwch brosiect Vercel o’r storfa gyda Cyfeiriadur gwraiddapps/web. Mae apps/web/vercel.json yn gosod y gorchmynion gosod ac adeiladu
(NITRO_PRESET=vercel) ac yn gwasanaethu /sw.js heb storfa.
Gosodwch y newidynnau amgylchedd. O docker/.env.example, o leiaf:
QUIRE_DEPLOY_TARGET=vercel, QUIRE_APP_ORIGIN, QUIRE_CONTENT_ORIGIN,
QUIRE_PLATFORM_DOMAINS, QUIRE_SECRET_KEY, QUIRE_MASTER_KEY,
DATABASE_URL (cyfeiriad y pwlwr), QUIRE_REPORT_DATABASE_URL,
QUIRE_AUDIT_DATABASE_URL, QUIRE_DATABASE_ID,
QUIRE_EMAIL_PROVIDER_CONFIG, QUIRE_MAIL_FROM, y gosodiadau storio,
ac QUIRE_COLLAB_URL a QUIRE_COLLAB_SIGNING_KEY sy’n pwyntio at wasanaeth collab
y cydymaith.
Mae QUIRE_REPORT_DATABASE_URL yn perthyn i’r gronfa ddata ffisegol a enwir gan
DATABASE_URL. Ar gyfer pob cronfa ddata gofrestredig ychwanegol, ychwanegwch ei URL cysylltiad
quire_report ei hun at amgylcheddau’r we a’r worker, yna
cofrestrwch enw ei newidyn amgylchedd fel env:NAME yng nghonsol
y platfform. Mae dadansoddeg yn methu’n ddiogel os nad oes URL adrodd y gronfa ddata honno.
Ar host y cydymaith, rhedwch docker/compose.yaml heb y gwasanaeth web,
gyda’r un docker/.env:
Mae mudo’n rhedeg yno cyn hyrwyddo pob defnydd Vercel.
Defnyddiwch. Os gwrthodir ffurfweddiad, mae log swyddogaeth yn dechrau â “The web
tier did not start on vercel” ac yn rhestru pob gosodiad i’w newid.
Uwchraddio
Mewnfudwch o host y cydymaith yn gyntaf, yna hyrwyddwch ddefnydd Vercel newydd,
yna treiglwch weithwyr y cydymaith: yr archeb sydd yn
upgrade.md. Mae dychwelyd ar unwaith Vercel yn ddychweliad cod ac mae’n
ddiogel bob amser o fewn datganiad.