افهم أن النشر إلى Vercel أمر سهل للغاية، ومع ذلك، هناك بعض الإعدادات التي تحتاج إلى أخذها في الاعتبار أثناء النشر.
لنبدأ بإعداد Supabase مع الأخذ في الاعتبار أن تطبيق NestJS الخاص بك جاهز للنشر.
Supabase هو بديل Firebase مفتوح المصدر مع دعم كامل وتكوين سلس لقاعدة بيانات PostgreSQL الخاصة بك، كما يوفر ميزات إضافية مثل المصادقة والتخزين وما إلى ذلك.
قم بإعداد حساب جديد على Supabase وقم بإنشاء مشروع جديد في الحساب.
بمجرد اكتمال الإعداد، انقر فوق زر الاتصال في صفحة الصفحة الرئيسية. سيُظهر لك هذا خيارات مختلفة لتوصيل قاعدة البيانات بمشروعك
اختبر الاتصال على السكان المحليين باستخدام بيانات الاعتماد المقدمة للتأكد من أن كل شيء يعمل بشكل جيد.
ملاحظة: تأكد من عدم كشف بيانات الاعتماد وتخزينها في ملف .env الخاص بك (أعتقد أنك تعرف هذا بالفعل؟)
بعد ذلك، لنقم بإعداد حساب Vercel الخاص بنا ونشر المشروع
عادةً، من المعروف أن Vercel يتم استخدامه في الغالب لنشر تطبيقات الواجهة الأمامية، ومع ذلك، يمكن استخدامه أيضًا لنشر مشاريع الواجهة الخلفية.
ملاحظة: استخدم مزود خدمة مناسب بدلاً من ذلك إذا كنت تعمل على مشروع متوسط إلى كبير الحجم لعمليات النشر الخلفية الخاصة بك.
على حساب Vercel الخاص بك، أنشئ مشروعًا جديدًا واتصل بمستودع Git الخاص بك. قم باستيراد ملف .env الخاص بك وانقر فوق الزر نشر.
فويلا، هذا كل شيء ؟؟؟.
...
هذا خطأ شائع لأن Vercel يحتاج إلى معرفة دليل الإخراج الخاص بك أثناء عملية الإنشاء. لإصلاح ذلك، ما عليك سوى إضافة ملف Versel.json ونسخ هذا:
{ "version": 2, "builds": [ { "src": "src/main.ts", "use": "@vercel/node" } ], "routes": [ { "src": "/(.*)", "dest": "src/main.ts", "methods": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"] } ] }
قم بتشغيل النشر مرة أخرى وهذا كل شيء
...
في حالتي، كان ذلك بسبب عدم العثور على خطأ في الوحدة النمطية
...
هناك عدة طرق لإصلاح هذه المشكلة:
من
import { UsersService } from 'src/users/users.service';
ل
import { UsersService } from '../users/users.service';
...
لقد اتبعت هذه الطريقة في النهاية لأنني لم أكن بحاجة إلى قصر تطبيقي على استخدام عمليات استيراد المسار النسبي فقط.
لذا، قم بتعديل vercel.json إلى هذا
{ "version": 2, "builds": [ { "src": "dist/main.js", "use": "@vercel/node" } ], "routes": [ { "src": "/(.*)", "dest": "dist/main.js", "methods": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"] } ] }
انتقل إلى ملف .gitignore وقم بإزالة /dist.
قم بتشغيل عملية نشر جديدة وهذا كل شيء.
سعيد بالبرمجة! ?
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3