اجرای پروژههای Node در فینگ
این سند عملکرد کلی فینگ در رابطه با شناسایی و اجرای برنامههای Node.js را توضیح میدهد. برای کسب اطلاعات بیشتر در مورد نحوهی استقرار برنامه، به بخش اجرای برنامه Node مراجعه نمایید.
زمانی برنامه شما به عنوان پلتفرم Node در نظر گرفته میشود که در ریشه اصلی برنامهتان فایل package.json
وجود داشته باشد.
نسخههایی که پشتیبانی میشوند
فینگ از نسخهی جدید و همچنین از نسخههای فعال TLS (Long-Term-Support) نود پشتیبانی میکند.
همانطور که در جدول انتشار Node.js در زیر نشان داده شده است، نسخههای Node.js که در حال حاضر فینگ از آنها پشتیبانی میکند 14
، 16
و 18
میباشند.
تعیین نسخهی Node.js
همیشه نسخهای را برای برنامهی خود انتخاب کنید که با زمان اجرا که در حال توسعه و آزمایش آن هستید مطابقت داشته باشد. برای اطلاع از نسخهی نود سیستم خود، دستور زیر را اجرا کنید:
$ node --versionv16.13.1
استفاده از فایل fing.yaml
میتوانید برای تعیین نسخهی node برنامهتان از فایل fing.yaml
استفاده نمایید. به اینصورت که در فایل مورد نظر عنوان build
را وارد کرده و نسخهی آن را مشخص کنید.
# fing.yaml...build:node_version: "14"
با این روش، سرور فینگ مراحل استقرار برنامهی شما را با این نسخه از node آغاز میکند.
استفاده از فایل package.json
برای مشخص کردن نسخهی node برنامهی خود، میتوانید فایل package.json
را باز کرده و در قسمت engines
نسخهی node را برای استفاده در فینگ مشخص کنید.
// package.json{"name": "appname","description": "","version": "1.0.0","engines": {"node": "16.13.0"}}
در این روش سرور فینگ آخرین نسخه از عددی که مشخص کردهاید را استفاده خواهد کرد. به عنوان مثال اگر شما نسخهی 16.13.0
را انتخاب کرده باشید، اما نسخهی جدیدتری از node یعنی 16.13.1
موجود باشد، سرور فینگ مراحل استقرار برنامه شما را بر اساس نسخهی جدیدتر آغاز خواهد کرد.
استفاده از نسخهی پیشفرض
اگر نسخهی مورد نظر خود را مشخص نکرده باشید، فینگ از نسخهی پیش فرض node 14
برای استقرار و ساخت برنامهی شما استفاده خواهد کرد.
روند ساخت یک برنامه node
برای ساخت و راهاندازی برنامهی node، ابتدا فینگ وابستگیهای برنامه را با توجه به پکیج منیجر استفاده شده در پروژه نصب میکند. سپس مراحل build برنامه را آغاز کرده و با توجه به دستور اجرایی که در برنامه مشخص شده است، یک برنامه نود را اجرا میکند.
نصب کتابخانهها
پروژه های Node یا با پکیج منیجر npm و یا با پکیج منیجر yarn ساخته میشوند.
اگر در ریشه پروژهتان فایل yarn.lock
داشته باشید، فینگ برای نصب وابستگیها و اجرای اسکریپتها از yarn install
استفاده خواهد کرد. و اگر در پروژهی خود فایل package-lock.json
داشته باشید فینگ برای نصب وابستگیها از دستور nmp ci
استفاده میکند. در غیر اینصورت از npm install
استفاده خواهد شد.
توصیه میشود برای اینکه وابستگیهای برنامهی شما به راحتی نصب گردند حتما یکی از این دو فایل را در ریشه پروژهی خود داشته باشید.
بهطور پیشفرض، فینگ همه وابستگیهایی که در فایل package.json
تحت عنوان dependencies و devDependencies فهرست شدهاند را نصب میکند.
پس از اجرای مراحل نصب و ساخت، فینگ پکیجهای اعلام شده تحت devDependencies را قبل از استقرار برنامه حذف میکند.
دستور اجرای برنامه
برای اجرای موفق برنامهی خود باید دستور اجرای آن را مشخص کرده باشید. برای این منظور فینگ به یکی از دو روش زیر اقدام میکند:
با استفاده از Procfile
اگر برای اجرای برنامهی خود دستورات خاصی را در نظر دارید میتوانید در ریشه اصلی پروژه خود فایلی به نام Procfile ایجاد کنید و دستورات خود را در آن قرار دهید تا فینگ بر اساس همان دستور برنامهی شما را جهت استقرار آماده سازی نماید. برای اطلاع از نحوهی عملکرد آن به صفحهی Procfile مراجعه نمایید.
web: npm start
با استفاده از package.json
اگر در برنامه شما پراک فایل یافت نشود، فینگ به سراغ فایل package.json
میرود و بر اساس دستور start
که در scripts
قرار دادهاید، برنامهی شما را اجرا خواهد کرد.
// package.json..."scripts": {..."start":"npm start"}