Дизайн docs/architecture/23-ops.md 5-бөлүмүндө. Vercel веб катмарын гана
иштетет. Башка баары сиз башкарган кошумча хостто иштейт, жана бул
милдеттүү эмес.
Бул релиздин абалы
Конфигурация даяр (apps/web/vercel.json, vercel Nitro пресети жана
башталыш текшерүүлөрү). Vercel’ге орток файл сактоо
(QUIRE_STORAGE_DRIVER=s3 же azure), функция инстанциялары аркылуу
иштей турган реалдуу убакыт драйвери (QUIRE_REALTIME_DRIVER=sse же
centrifugo) жана HTTP почта провайдери керек. Алар болбосо веб катмары
башталыштан баш тартат жана анын журналы ар бир жетпей турган жөндөөнү
атайт.
Бөлүктөр
Piece
Where it runs
web
Vercel Functions, Bun runtime: беттер, REST, MCP, LTI, кабыл алынган вебхуктар
worker, scheduler, collab, content
Кошумча хост: Fly, Railway, ECS же docker/compose.yaml менен өз Docker хостуңуз
Postgres
Сырткы, транзакциялык туташтыруу бассейнинин артында: Neon, Supabase же PgBouncer менен RDS
Файлдар
S3 же R2. Туруктуу диск жок
Фон жумуштары
Суроонун транзакциясынын ичинде pg-boss менен кезекке турат, кошумча жумушчу аткарат. Кошумча жумушчуда QUIRE_QUEUE_DRIVER=vercel болсо, жеңил жумуштар (тартиби жок билдирүү жана вебхук жеткирүүлөрү) Vercel Queues аркылуу өтөт (VERCEL_QUEUE_REGION, VERCEL_QUEUE_TOKEN), ошондуктан алар үчүн бассейндеги Postgres суранбайт
Кайталануучу жумуштар
Кошумча кезектеөөчү. Vercel Cron маршруту жок, анткени функциянын ичинде иш кылган cron убакыт чегинен чыгат
Веб катмары башталганда буларды текшерет жана, ар бир ката тууралуу атап,
кийин эч качан жөнөтүлбөй турган биринчи почтада ийгиликсиз болгондон
көрө, баш тартат:
SMTP жок. Vercel чыгып бараткан SMTP’ни тосуп койот.
QUIRE_EMAIL_PROVIDER_CONFIG’ти HTTP провайдерге (Postmark, SES,
Mailgun, SendGrid же Resend) коюңуз. QUIRE_SMTP_URL четке кагылат.
Жергиликтүү диск жок.QUIRE_STORAGE_DRIVER=local четке кагылат.
Чакырымдар ортосунда орток эс тутум жок.QUIRE_REALTIME_DRIVER=inprocess четке кагылат. Серверден жиберилген
окуялар функциянын убакыт чегине чейин чектелет; клиент курсор менен
кайра туташат, ошондуктан эч кандай окуя жоголбойт, бирок болуу
(presence) жеткиликсиз.
Тигилген tenant маалымат базалары чектелген, кеминде сегизге
чейин, анткени ар бири бассейндерди бөлүшө албаган чөйрөдө башка
туташтыруу бассейни.
Жайгаштыруу
Репозиторийден Root Directoryapps/web болгон Vercel долбоорун
түзүңүз. apps/web/vercel.json орнотуу жана куруу буйруктарын
(NITRO_PRESET=vercel) коюп, /sw.js’ти кэшсиз берет.
Чөйрө өзгөрмөлөрүн коюңуз. docker/.env.example’ден, кеминде:
QUIRE_DEPLOY_TARGET=vercel, QUIRE_APP_ORIGIN, QUIRE_CONTENT_ORIGIN,
QUIRE_PLATFORM_DOMAINS, QUIRE_SECRET_KEY, QUIRE_MASTER_KEY,
DATABASE_URL (бассейнчүнүн дареги), QUIRE_REPORT_DATABASE_URL,
QUIRE_AUDIT_DATABASE_URL, QUIRE_DATABASE_ID,
QUIRE_EMAIL_PROVIDER_CONFIG, QUIRE_MAIL_FROM, сактоо жөндөөлөрү,
жана кошумчанын collab кызматын көрсөткөн QUIRE_COLLAB_URL жана
QUIRE_COLLAB_SIGNING_KEY.
QUIRE_REPORT_DATABASE_URLDATABASE_URL атаган физикалык
маалымат базасына таандык. Ар бир кошумча катталган маалымат базасы
үчүн анын өзүнүн quire_report туташуу дарегин веб жана жумушчу
чөйрөлөрүнөн экөөнө кошуңуз, андан кийин анын чөйрө өзгөрмөсүнүн атын
платформа консольунда env:NAME катары каттаңыз. Ал маалымат
базасынын отчёт дареги жок болсо аналитика ийгиликсиз болот.
Кошумча хостто docker/compose.yaml’ды web кызматысыз, ошол эле
docker/.env менен иштетиңүз:
Миграциялар ошол жерде, ар бир Vercel жайгаштыруусу көтөрүлгөнгө
чейин иштетилет.
Жайгаштырыңыз. Четке кагылган конфигурацияда функция журналы “The web
tier did not start on vercel” менен башталып, өзгөртүү керек болгон
ар бир жөндөөнү тизмелейт.
Жаңылоо
Алгач кошумча хосттон миграция кылыңыз, андан кийин жаңы Vercel
жайгаштыруусун көтөрүңүз, андан кийин кошумчанын жумушчуларын
түшүрүңүз: тартип upgrade.md документинде. Vercel’дин
заматта кайтаруусу — бул кодду кайтаруу жана релиз ичинде ар дайым
коопсуз.