NX
انایکس (Nx) یک سیستم ساخت (Build System) هوشمند، سریع و توسعهپذیر است که به طور ویژه برای مدیریت پروژههای Monorepo (نگهداری چندین اپلیکیشن و کتابخانه در یک مخزن واحد) طراحی شده است. این ابزار با استفاده از قابلیتهایی مانند کشینگ پیشرفته و تحلیل دقیق گراف وابستگیها، فرایند کامپایل و تست برنامهها را به شدت تسریع میکند. Nx به شما اجازه میدهد فریمورکهای مختلفی مانند React، Angular، Vue و Node.js را در یک فضای کاری یکپارچه مدیریت کنید.
پلتفرم ابری پارسپک با پشتیبانی از معماری پیچیده Nx، محیطی قدرتمند برای بیلد و استقرار این پروژهها فراهم کرده است تا بدون درگیری با تنظیمات سرور، پروژههای Monorepo شما با بالاترین سرعت کامپایل و مستقر شوند.
مراحل استقرار
برای آموزش گامبهگام ساخت اپلیکیشن، به راهنمای «استقرار از طریق سورسکد (زبانها)» مراجعه کنید. همچنین برای تنظیمات زیرساختی نیز به بخش مدیریت اپلیکیشن مراجعه کنید:
پیشنیازها و استقرار کد
برای اینکه پروژه مونوریپو شما به درستی توسط موتور استقرار پارسپک شناسایی و دیپلوی شود، رعایت استانداردهای زیر در سورسکد و تنظیمات الزامی است:
-
عدم آپلود وابستگیها: اکیدا از آپلود پوشه
node_modulesدر سورسکد یا فایل زیپ خودداری کنید. این پوشه در مرحله بیلد به صورت خودکار توسط پلتفرم نصب میشود. -
فایلهای ساختاری الزامی: وجود دو فایل
package.jsonوnx.jsonدر مسیر ریشه اجرا (context_dir) کاملا اجباری است تا ابزار ساخت Nx بتواند فضای کاری را شناسایی کند. -
ساختار معتبر اسکریپتها: محتوای
package.jsonمیبایست کاملا صحیح بوده و اسکریپتهای (Scripts) مربوط به بیلد و اجرای پروژهها به صورت دقیق در آن تعریف شده باشند. -
تخصیص منابع (Build Phase): با توجه به ماهیت مونوریپو بودن پروژههای Nx و تحلیل گراف وابستگیها، این اپلیکیشنها در مرحله کامپایل (Build) نیازمند منابع پردازشی قدرتمندی هستند. سقف رم (RAM) و پردازنده (CPU) را متناسب با حجم کل فضای کاری تخصیص دهید تا فرایند بیلد بدون خطای کمبود حافظه (Out of Memory) طی شود.
-
پارامترهای پایه: امکان تنظیم پورت اجرای برنامه، نسخه Node.js سازگار و مسیر ریشه اجرای پروژه (context_dir) در زمان استقرار از طریق پنل فراهم است.
متغیرهای محیطی (Env Vars)
متغیرهای محیطی برای مدیریت رفتار برنامه و حفظ امنیت دادهها استفاده میشوند. با توجه به اینکه Nx میتواند به صورت همزمان پروژههای فرانتاند و بکاند را مدیریت کند، مقادیر خود را در پنل داشبورد وارد نمایید تا بر اساس معماری پروژه، در فرآیند کامپایل (برای برنامههای کلاینتساید) یا در زمان اجرا (برای میکروسرویسها و برنامههای وب) به درستی در کانتینرها تزریق شوند. متغیرهای بخش بکاند در زمان اجرا از طریق آرایه استاندارد process.env در دسترس خواهند بود.
نکته: برای آموزش گامبهگام نحوه تعریف متغیرهای اختصاصی، ConfigMapها و Secretها در داشبورد، به مستندات
تنظیمات دامنه
جهت اختصاص دامنه شخصی به سرویس خود برای دسترسی عمومی کاربران، به راهنمای
وبهوک
جهت پیادهسازی اتوماسیون و دیپلوی خودکار کدهای جدید با هر بار Push در مخزن گیت،
مشاهده لاگها
خروجیهای استاندارد برنامه و خطاهای مرحله بیلد بهصورت یکپارچه مانیتور میشوند. برای عیبیابی اپلیکیشن خود به