اجرای دائمی نرم افزار های nodejs به صورت startup , service

مقدمه

برنامه هایی که مبتنی بر nodejs نوشته می‌شوند، به طور معمول نیاز به اجرای دائمی دارند یعنی این شما باید حداقل مطئن شود یک instance یا نمونه از برنامه در حال اجرا است، برای این کار نیاز هست برنامه های شما باید به صورت سرویس اجرا بشوند برای این موضوع مشکل اساسی که پیش می آید این که سرویس شدن در هر سیستم عامل متفاوت است و برنامه هایی که بر اساس نود جی اس هستند برای startup شدن و سرویس شدن خود دارای ماهیت standalone نیستد وابسته به nodejs می باشند برای حل این مشکل پکیج هایی از جمله forever ،pm2 و … بوجود آمده اند.

PM2

با توجه به بررسی و تجربه حقیر در این زمینه PM2 بهترین گزینه برای سرویس کردن برنامه های مبتنی بر nodejs می‌باشد، لذا کاربری ساده تری دارد، قابلیت اطمینان بیشتری دارد و همچنین سیستم ماینتورینگ بسیار جالبی دارد برای کسب اطلاعات بیشتر به زبان اصلی به گیت هاب این پکیج حتما مراجعه کنید. اما ما در اینجا توضیحات لازم برای کار با این پکیج رو به شما در ادامه ارائه خواهیم کرد.

نصب PM2 برای نصب pm2 در terminal و یا cmd دستور زیر را اجرا کنید البته پس از اطمینان حاصل کردن از این که nodejs شما نصب شده است:

اگر کاربر ویندوز هستید sudo ابتدای دستور را پاک کنید.

بعد از نصب میتونید از pm2 به صورت زیر استفاده کنید.

افزودن پروسه:

به جای /path/mynodeapp.js آدرس اسکریپ برنامه مورد نظر را بزنید.

نمایش آنچه در حال اجراس:

بعد می‌توانید آنچه در حال اجراست ببینید.

مانیتور کردن:

حذف پروسه:

برای حذف هم از نام و هم از id پروسه میتونید استفاده کنید id برای پروسه های همنام ضروری می‌شود.

ریستارت کردن پروسه:

از قاعده بالایی (مورد قبلی) پیروی میکند.

برای ذخیره کردن حالت فعلی و استارت اپ شدن پروسه های فعلی که در حال اجرا هستند یکی از دو دستور زیر رو  به دلخواه استفاده کنید:

 

معرفی پنل وب  برای pm2

ساده و مختصر : حقیر برای کار ساده با pm2 یک پنل وب نوشتم که می‌تونید از اون استفاده کنید و بدون حتی یک خط command زدن کارتون رو راه بندازید،  آدرس github:

با قابلیت افزودن (با انتخابگر فایل بصری) ، حذف و ریستارت کردن و ذخیره کردن پروسه ها همراه با فرم ورود (تایید هویت) برای تامین امنیت و دسترسی مجاز به پنل

تصاویر محیط pm2panel:

 

 

برای نصب این پنل به گیت هاب مراجعه کنید اطلاعات کامل در آن درج شده است.

نکته: اگر بر روی سرور نصب میکند حتما پسورد و نام کاربری را عوض کنید تا مشکل امنیتی برایتان پیش نیاید.

نکته آخر: بعد از نصب و راهندازی رو سرور پورت برنامه که به صورت پیشفرض 3001 میباشد باز شود یعنی از حالت بلاک بودن در فایروال خارج شود تا پنل وب قابل استفاده باشد.

‌A1Gard

اول از همه کوچک ترین عضو مجموعه 4xmen بنده حقیر هستم. در ثانی یک توسعه دهنده هستم زمینه های تخصصی کارم :‌ Delphi, PHP, C++ ,Python, JavaScript, Unity game engine, C#, asm و علاقه مند به لینوکس، RCE ، کریپتوگرافی هستم. تا الان حضرت حق اینا رو به ما داده و هر وقت که بخواد ازمون میگیره دست خودشه. یا حق، با حق، تا حق

More Posts

7 thoughts on “اجرای دائمی نرم افزار های nodejs به صورت startup , service”

  1. چند تا سوال داشتم
    قالب سایتتون Radar هست، درسته؟
    من هر جا رو گشتم قالب مشکل داشت
    اگه میشه فایل قالب رو ایمیل کنید یا از هر جا که دریافت کردید لینکش رو بفرستید
    ممنون 🌺
    Shervin850@gmail.com

    1. بله قالب Radar هست من خودم از بخش قالب های وردپرس به صورت آنلاین نصب کردم، کمی cutomize شده وگرنه تغییر خاصی نداره پیشنهاد میکنم حتما بعد از نصب امکاناتشو فعال کنید تا بهره کامل ببرید.

  2. همچنین اینکه فونت ها ی فارسی رو دستی اضافه کردید یا با استفاده از افزونه؟
    اگه مقدور هست اسم افزونه رو لطف کنید

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *