---
title: "Vercel मा वेब तह"
description: "साथी वर्करसहित Vercel मा Quire वेब तह चलाउनुहोस्।"
image: "https://docs.quirelms.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.quirelms.com/ne/llms.txt
> Use this file to discover all available pages before exploring further.

# Vercel मा वेब तह

<span id="the-web-tier-on-vercel"></span>

डिजाइन `docs/architecture/23-ops.md` खण्ड 5 हो। Vercel ले वेब तह मात्र चलाउँछ।
बाँकी सबै तपाईंले सञ्चालन गर्ने साथी होस्टमा चल्छ, र यो वैकल्पिक होइन।

## यस रिलिजमा स्थिति <!--quire:status-in-this-release-->

कन्फिगरेसन ठाउँमा छ (`apps/web/vercel.json`, `vercel` Nitro प्रिसेट र सुरुवात जाँच)।
Vercel लाई साझा फाइल भण्डारण (`QUIRE_STORAGE_DRIVER=s3` वा `azure`),
फङ्क्सन इन्स्ट्यान्समा काम गर्ने रियलटाइम ड्राइभर (`QUIRE_REALTIME_DRIVER=sse` वा `centrifugo`) र HTTP
इमेल प्रदायक चाहिन्छ। तिनबिना वेब तह सुरु गर्न अस्वीकार गर्छ र लगले छुटेका हरेक सेटिङ नाम दिन्छ।

## टुक्राहरू <!--quire:the-pieces-->

| टुक्रा | कहाँ चल्छ |
| --- | --- |
| `web` | Vercel Functions, Node रनटाइम: पृष्ठ, REST, MCP, LTI, प्राप्त webhooks |
| `worker`, `scheduler`, `collab`, `content` | साथी होस्ट: Fly, Railway, ECS, वा `docker/compose.yaml` सहित तपाईंको आफ्नै Docker होस्ट |
| Postgres | बाह्य, कारोबार पुलरपछाडि: Neon, Supabase, वा PgBouncer सहित RDS |
| Files | S3 वा R2। स्थायी डिस्क छैन |
| Background jobs | अनुरोधकै कारोबारभित्र pg-boss सँग पङ्क्तिबद्ध, साथी वर्करद्वारा चलाइने। साथी वर्करमा `QUIRE_QUEUE_DRIVER=vercel` सहित, हल्का काम (अक्रमित सूचना र webhook वितरण) Vercel Queues (`VERCEL_QUEUE_REGION`, `VERCEL_QUEUE_TOKEN`) मार्फत जान्छन्, त्यसैले पुल गरिएको Postgres तिनका लागि पोल गरिँदैन |
| Recurring jobs | साथी सेड्युलर। Vercel Cron रुट छैन, किनभने फङ्क्सनभित्र काम गर्ने cron टाइमआउट हुन्छ |
| Tracing | तपाईंको कलेक्टरमा OpenTelemetry, `OTEL_EXPORTER_OTLP_ENDPOINT` |

## यो लक्ष्यले के गर्न सक्दैन <!--quire:what-this-target-cannot-do-->

वेब तहले सुरु हुँदा यी जाँच्छ र पछि कहिल्यै नपठाइने पहिलो इमेलमा असफल हुनुको सट्टा
हरेक समस्या नामसहित अस्वीकार गर्छ:

- **SMTP छैन।** Vercel ले बाह्य SMTP अवरुद्ध गर्छ। `QUIRE_EMAIL_PROVIDER_CONFIG` लाई
  HTTP प्रदायक (Postmark, SES, Mailgun, SendGrid वा Resend) मा सेट गर्नुहोस्।
  `QUIRE_SMTP_URL` अस्वीकार हुन्छ।
- **स्थानीय डिस्क छैन।** `QUIRE_STORAGE_DRIVER=local` अस्वीकार हुन्छ।
- **आह्वानबीच साझा मेमोरी छैन।** `QUIRE_REALTIME_DRIVER=inprocess`
  अस्वीकार हुन्छ। सर्भर-पठाइएका घटना फङ्क्सन टाइमआउटमा सीमित छन्; क्लाइन्ट कर्सरसहित पुनः जोडिन्छ,
  त्यसैले कुनै घटना हराउँदैन, तर उपस्थिति अनुपलब्ध छ।
- **पिन गरिएका टेनान्ट डेटाबेस** लगभग आठमा सीमित छन्, किनभने हरेक पुल साझा गर्न नसक्ने वातावरणमा अर्को जडान पुल हो।

## परिनियोजन गर्ने <!--quire:deploying-->

1. **रुट डाइरेक्टरी** `apps/web` सहित भण्डारबाट Vercel परियोजना बनाउनुहोस्।
   `apps/web/vercel.json` ले स्थापना र निर्माण आदेश सेट गर्छ
   (`NITRO_PRESET=vercel`) र `/sw.js` लाई क्यासबिना दिन्छ।
2. वातावरण चर सेट गर्नुहोस्। `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_URL` `DATABASE_URL` ले नाम दिएको भौतिक डेटाबेसको हो।
   हरेक थप दर्ता डेटाबेसका लागि, वेब र वर्कर दुवै वातावरणमा यसको आफ्नै
   `quire_report` जडान URL थप्नुहोस्, त्यसपछि प्लेटफर्म कन्सोलमा यसको वातावरण चर नाम `env:NAME` का रूपमा
   दर्ता गर्नुहोस्। त्यो डेटाबेसको प्रतिवेदन URL छुटेमा विश्लेषण बन्द असफल हुन्छ।
3. साथी होस्टमा, `docker/compose.yaml` लाई `web` सेवाबिना चलाउनुहोस्, उही `docker/.env` सहित:
   ```sh
   docker compose -f docker/compose.yaml up -d migrate init worker scheduler collab content
   ```
   माइग्रेसन त्यहाँ चल्छन्, हरेक Vercel परिनियोजन प्रवर्धन हुनुअघि।
4. परिनियोजन गर्नुहोस्। अस्वीकृत कन्फिगरेसनमा फङ्क्सन लग "The web
   tier did not start on vercel" बाट सुरु हुन्छ र परिवर्तन गर्ने हरेक सेटिङ सूचीबद्ध गर्छ।

## स्तरोन्नति गर्ने <!--quire:upgrading-->

पहिले साथी होस्टबाट माइग्रेट गर्नुहोस्, त्यसपछि नयाँ Vercel परिनियोजन प्रवर्धन गर्नुहोस्,
त्यसपछि साथीका वर्कर रोल गर्नुहोस्: [upgrade.md](/ne/ops/upgrade/) मा क्रम।
Vercel तत्काल फिर्ता रोल कोड फिर्ता रोल हो र रिलिजभित्र सधैँ सुरक्षित छ।

Source: https://docs.quirelms.com/ne/ops/vercel/index.mdx
