Lewati menyang isi

Tier web ing Vercel

Mlakokake tier web Quire ing Vercel karo worker pendamping.

Desaine iku docs/architecture/23-ops.md bagean 5. Vercel mbukak tier web wae. Kabeh liyane mlaku ing host pendamping sing dioperasikake, lan ora opsional.

Status ing rilis iki

Konfigurasi wis ana (apps/web/vercel.json, preset Nitro vercel lan pamriksan start-up). Vercel butuh panyimpenan file bareng (QUIRE_STORAGE_DRIVER=s3 utawa azure), driver realtime sing mlaku ing antar instance fungsi (QUIRE_REALTIME_DRIVER=sse utawa centrifugo) lan panyedhiya email HTTP. Tanpane tier web nolak miwiti lan loge nyebutake saben setelan sing ilang.

Perangan

Perangan Panggonan mlaku
web Vercel Functions, runtime Node: kaca, REST, MCP, LTI, webhook ditampa
worker, scheduler, collab, content Host pendamping: Fly, Railway, ECS, utawa host Docker dhewe nganggo docker/compose.yaml
Postgres Eksternal, ing mburine pooler transaksi: Neon, Supabase, utawa RDS nganggo PgBouncer
File S3 utawa R2. Ora ana disk persisten
Pagawean latar Diantrekake nganggo pg-boss ing njero transaksi panjalukan, dibukak dening worker pendamping. Kanthi QUIRE_QUEUE_DRIVER=vercel ing worker pendamping, pagawean entheng (pangiriman notifikasi lan webhook sing ora urut) liwat Vercel Queues (VERCEL_QUEUE_REGION, VERCEL_QUEUE_TOKEN), supaya Postgres sing dipool ora dipoll kanggo iku
Pagawean rutin Scheduler pendamping. Ora ana rute Vercel Cron, amarga cron sing nindakake pagawean ing njero fungsi timeout
Tracing OpenTelemetry menyang kolektor panjenengan, OTEL_EXPORTER_OTLP_ENDPOINT

Apa sing ora bisa ditindakake target iki

Tier web mriksa iki nalika miwiti lan nolak, nyebutake saben masalah, tinimbang gagal mengko ing email kapisan sing ora tau ngirim:

  • Tanpa SMTP. Vercel mblokir SMTP metu. Setel QUIRE_EMAIL_PROVIDER_CONFIG menyang panyedhiya HTTP (Postmark, SES, Mailgun, SendGrid utawa Resend). QUIRE_SMTP_URL ditolak.
  • Tanpa disk lokal. QUIRE_STORAGE_DRIVER=local ditolak.
  • Tanpa memori bareng antar invocation. QUIRE_REALTIME_DRIVER=inprocess ditolak. Server-sent events diwatesi ing timeout fungsi; klien nyambung maneh nganggo cursor, supaya ora ana prastawa ilang, nanging presence ora kasedhiya.
  • Database tenant sing disematake diwatesi kira-kira wolung, amarga saben iku pool sambungan liyane ing lingkungan sing ora bisa nuduhake pool.

Deploy

  1. Gawe proyek Vercel saka repositori kanthi Root Directory apps/web. apps/web/vercel.json nyetel prentah instal lan build (NITRO_PRESET=vercel) lan ngladeni /sw.js tanpa cache.
  2. Setel variabel lingkungan. Saka docker/.env.example, paling ora: QUIRE_DEPLOY_TARGET=vercel, QUIRE_APP_ORIGIN, QUIRE_CONTENT_ORIGIN, QUIRE_PLATFORM_DOMAINS, QUIRE_SECRET_KEY, QUIRE_MASTER_KEY, DATABASE_URL (alamate pooler), QUIRE_REPORT_DATABASE_URL, QUIRE_AUDIT_DATABASE_URL, QUIRE_DATABASE_ID, QUIRE_EMAIL_PROVIDER_CONFIG, QUIRE_MAIL_FROM, setelan panyimpenan, lan QUIRE_COLLAB_URL lan QUIRE_COLLAB_SIGNING_KEY sing nuduhake layanan collab pendamping. QUIRE_REPORT_DATABASE_URL kagungane database fisik sing dijenengi dening DATABASE_URL. Kanggo saben database kadhaptar tambahan, tambah URL sambungan quire_report dhewe menyang lingkungan web lan worker, banjur dhaptarake jeneng variabel lingkungane minangka env:NAME ing konsol platform. Analitik gagal nutup yen URL laporan database kasebut ilang.
  3. Ing host pendamping, mbukak docker/compose.yaml tanpa layanan web, kanthi docker/.env sing padha:
    docker compose -f docker/compose.yaml up -d migrate init worker scheduler collab content
    Migrasi mlaku ing kana, sadurunge saben deployment Vercel dipromosikake.
  4. Deploy. Ing konfigurasi sing ditolak log fungsi diwiwiti kanthi “The web tier did not start on vercel” lan ndhaftar saben setelan sing diowahi.

Ngupgrade

Migrasi saka host pendamping dhisik, banjur promosikake deployment Vercel anyar, banjur gulung workere pendamping: urutan ing upgrade.md. Rollback instan Vercel iku rollback kode lan tansah aman sajrone rilis.

Navigasi

Ketik kanggo nggoleki…

↑↓ navigasi↵ pilihEsc tutup