آموزش نصب uptime kuma در Ubuntu

آموزش جامع نصب Uptime Kuma در Ubuntu

در این راهنمای جامع و تخصصی گام به گام شما را با فرآیند نصب Uptime Kuma ابزار مانیتورینگ قدرتمند و متن باز بر روی سیستم عامل محبوب Ubuntu آشنا می کنیم. Uptime Kuma یک راهکار ایده آل برای پایش وضعیت سرویس ها وبسایت ها پورت ها و دیتابیس های شماست که با رابط کاربری بصری و امکانات متنوع هشداردهی شما را از هرگونه قطعی یا مشکل در دسترس بودن آگاه می سازد.

نصب Uptime Kuma بر روی سرور Ubuntu به شما امکان می دهد یک سیستم مانیتورینگ مستقل و قابل اعتماد برای زیرساخت خود ایجاد کنید. این راهنما با جزئیات کامل به شما کمک می کند تا حتی اگر تجربه کمی در کار با ترمینال لینوکس دارید بتوانید با موفقیت این ابزار ارزشمند را راه اندازی کنید. ما تمام پیش نیازها مراحل نصب اصلی روش مدیریت سرویس برای اطمینان از پایداری و دسترسی به رابط کاربری تحت وب را پوشش خواهیم داد.

آشنایی با Uptime Kuma

Uptime Kuma یک ابزار مانیتورینگ وضعیت است که به دلیل سادگی در نصب رابط کاربری جذاب و امکانات غنی خود محبوبیت زیادی کسب کرده است. این ابزار متن باز و رایگان جایگزین مناسبی برای سرویس های مانیتورینگ پولی محسوب می شود. با استفاده از Uptime Kuma می توانید انواع مختلفی از سرویس ها را پایش کنید.

قابلیت های کلیدی Uptime Kuma شامل نظارت بر HTTP(s) TCP Ping بررسی پورت دیتابیس ها سرورهای DNS و حتی گواهینامه های SSL است. همچنین پشتیبانی گسترده ای از روش های ارسال هشدار مانند ایمیل تلگرام دیسکورد Slack و ده ها سرویس دیگر دارد که اطمینان می دهد شما به سرعت از هرگونه مشکلی مطلع شوید. رابط کاربری آن به صورت لحظه ای وضعیت سرویس ها را نمایش می دهد و نمودارهای تاریخچه زمان در دسترس بودن را ارائه می کند.

پیش نیازهای نصب Uptime Kuma

برای نصب موفقیت آمیز نرم افزار Uptime Kuma بر روی سیستم عامل Ubuntu نیاز است که ابتدا چند بسته نرم افزاری ضروری را روی سیستم خود نصب و پیکربندی کنید. این پیش نیازها اطمینان حاصل می کنند که محیط لازم برای اجرای برنامه فراهم شده است.

مهم ترین پیش نیازها شامل Node.js برای اجرای کد برنامه و Git برای دریافت سورس کد Uptime Kuma از مخزن آن هستند. اطمینان از دسترسی سرور Ubuntu به اینترنت نیز حیاتی است تا بتوانید بسته های لازم را دانلود کنید. همچنین توصیه می شود قبل از شروع لیست بسته های سیستم عامل خود را به روز کنید.

نصب Node.js و NPM

Uptime Kuma بر پایه Node.js توسعه یافته است بنابراین نصب Node.js اولین و مهم ترین قدم است. Node.js یک محیط اجرایی جاوا اسکریپت سمت سرور است که به برنامه هایی مانند Uptime Kuma اجازه می دهد خارج از مرورگر اجرا شوند. NPM (Node Package Manager) نیز همراه Node.js نصب می شود و برای مدیریت وابستگی های پروژه Uptime Kuma استفاده خواهد شد.

بهترین روش برای نصب Node.js در Ubuntu استفاده از مخازن رسمی NodeSource است. این مخازن آخرین نسخه های پایدار Node.js را ارائه می دهند که معمولاً به روزتر از نسخه های موجود در مخازن پیش فرض Ubuntu هستند. برای افزودن مخزن NodeSource و نصب Node.js مراحل زیر را در ترمینال دنبال کنید:

  • ابتدا مخزن NodeSource را اضافه کنید. دقت کنید که نسخه Node.js مورد نیاز ممکن است با گذشت زمان تغییر کند. همواره نسخه پیشنهادی در مستندات رسمی Uptime Kuma یا نسخه LTS (پشتیبانی طولانی مدت) Node.js را انتخاب کنید. برای مثال برای نصب Node.js 18:

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash –

  • سپس Node.js و NPM را نصب کنید:

sudo apt-get install -y nodejs

  • پس از اتمام نصب می توانید با دستورات زیر از نصب صحیح Node.js و NPM و نسخه آن ها اطمینان حاصل کنید:

node -v

npm -v

این دستورات باید نسخه نصب شده Node.js و NPM را نمایش دهند.

نصب Git

Git یک سیستم کنترل نسخه توزیع شده است که برای مدیریت کد منبع پروژه های نرم افزاری استفاده می شود. برای دریافت کد Uptime Kuma از مخزن رسمی آن در GitHub نیاز به نصب Git بر روی سرور Ubuntu خود دارید. نصب Git از طریق مدیر بسته apt در Ubuntu بسیار ساده است.

برای نصب Git دستور زیر را در ترمینال اجرا کنید:

sudo apt update

sudo apt install git -y

دستور اول لیست بسته های موجود را به روز می کند و دستور دوم بسته Git را نصب می کند. پس از نصب می توانید با دستور زیر از نصب صحیح آن اطمینان حاصل کنید:

git –version

این دستور باید نسخه Git نصب شده را نمایش دهد.

مراحل نصب Uptime Kuma در Ubuntu

پس از آماده سازی پیش نیازهای لازم اکنون می توانید به سراغ مراحل اصلی نصب نرم افزار Uptime Kuma بروید. این مراحل شامل دانلود کد منبع برنامه نصب وابستگی های لازم برای اجرای آن و انجام پیکربندی های اولیه است.

این فرآیند به طور معمول شامل استفاده از دستورات Git و NPM است که در مراحل پیش نیاز نصب کرده اید. توصیه می شود یک پوشه مشخص و مناسب برای نصب Uptime Kuma در نظر بگیرید مثلاً در مسیر `/opt/uptime-kuma` یا در پوشه خانگی یک کاربر غیر روت.

دانلود و آماده سازی فایل ها

اولین قدم دریافت کد منبع Uptime Kuma از مخزن رسمی آن در GitHub است. شما می توانید با استفاده از دستور git clone کل محتویات مخزن را به سرور Ubuntu خود منتقل کنید. بهتر است این کار را در یک پوشه اختصاصی انجام دهید تا فایل ها منظم باشند.

برای مثال فرض کنید می خواهید Uptime Kuma را در پوشه `/opt/uptime-kuma` نصب کنید. ابتدا پوشه را ایجاد کرده و مالکیت آن را به کاربر مناسب (مثلاً کاربر فعلی خود یا یک کاربر سیستمی اختصاصی) تغییر دهید سپس وارد آن پوشه شوید:

sudo mkdir /opt/uptime-kuma

sudo chown your_user:your_user /opt/uptime-kuma (به جای your_user نام کاربری خود را قرار دهید)

cd /opt/uptime-kuma

حالا کد منبع Uptime Kuma را از GitHub کلون کنید:

git clone https://github.com/louislam/uptime-kuma.git .

نقطه (.) در انتهای دستور git clone به Git می گوید که محتویات مخزن را مستقیماً در پوشه فعلی (یعنی `/opt/uptime-kuma`) کلون کند نه اینکه یک زیرپوشه با نام `uptime-kuma` ایجاد کند.

نصب وابستگی ها

پروژه Uptime Kuma برای اجرا به کتابخانه ها و ماژول های دیگری وابسته است که در فایل package.json آن لیست شده اند. پس از دانلود کد منبع باید این وابستگی ها را با استفاده از NPM نصب کنید. این کار اطمینان حاصل می کند که تمام اجزای لازم برای اجرای برنامه در دسترس هستند.

در حالی که در پوشه پروژه Uptime Kuma (مثلاً `/opt/uptime-kuma`) هستید دستور زیر را برای نصب وابستگی ها اجرا کنید:

npm install –production

دستور npm install به NPM می گوید که وابستگی های پروژه فعلی را نصب کند. استفاده از فلگ --production باعث می شود فقط وابستگی های مورد نیاز برای اجرای برنامه در محیط تولید (production) نصب شوند و از نصب وابستگی های توسعه (development) خودداری می شود که حجم کمتری را اشغال می کند و فرآیند نصب را سریع تر می کند.

این فرآیند ممکن است چند دقیقه طول بکشد بسته به سرعت اینترنت شما و تعداد وابستگی ها.

پیکربندی و اجرای اولیه

پس از نصب وابستگی ها Uptime Kuma آماده اجرا است. برای اجرای اولیه و اطمینان از اینکه همه چیز به درستی نصب شده است می توانید از اسکریپت شروع برنامه استفاده کنید. Uptime Kuma به طور پیش فرض بر روی پورت 3001 اجرا می شود اما می توانید این پورت را تغییر دهید.

برای اجرای اولیه Uptime Kuma در پوشه پروژه دستور زیر را اجرا کنید:

npm run start

این دستور اسکریپت شروع تعریف شده در فایل package.json را اجرا می کند. اگر همه چیز به درستی پیش رفته باشد باید خروجی هایی را مشاهده کنید که نشان دهنده شروع سرور Uptime Kuma و گوش دادن آن بر روی پورت پیش فرض (معمولاً 3001) هستند.

نکته مهم: اجرای برنامه با npm run start فقط برای تست اولیه است و برنامه در پس زمینه اجرا نمی شود. با بستن ترمینال برنامه متوقف خواهد شد. برای اجرای پایدار و مدیریت بهتر در بخش بعدی از PM2 استفاده خواهیم کرد.

راه اندازی و مدیریت Uptime Kuma به عنوان سرویس

اجرای دستی Uptime Kuma برای استفاده مداوم در محیط سرور مناسب نیست. برای اطمینان از اینکه برنامه همیشه در حال اجراست حتی پس از راه اندازی مجدد سرور و همچنین برای مدیریت بهتر فرآیند (مانند مشاهده لاگ ها و راه اندازی مجدد در صورت نیاز) توصیه می شود آن را به عنوان یک سرویس مدیریت کنید. PM2 یک ابزار بسیار محبوب و قدرتمند برای مدیریت فرآیندهای Node.js است.

استفاده از PM2 امکانات زیادی مانند اجرای برنامه در پس زمینه (daemonize) نظارت بر مصرف منابع شروع خودکار برنامه هنگام بوت سیستم و مدیریت آسان لاگ ها را فراهم می کند. این ابزار به طور گسترده در جامعه Node.js برای مدیریت برنامه های تولیدی استفاده می شود.

نصب PM2

PM2 یک مدیر فرآیند برای برنامه های Node.js است که آن را می توانید به راحتی با استفاده از NPM نصب کنید. از آنجایی که PM2 قرار است فرآیندهای سیستمی را مدیریت کند و ممکن است برای کاربران مختلف استفاده شود بهتر است آن را به صورت سراسری (globally) نصب کنید.

برای نصب PM2 به صورت سراسری دستور زیر را اجرا کنید:

sudo npm install -g pm2

فلگ -g به NPM می گوید که بسته PM2 را در مسیر سراسری بسته های Node.js نصب کند تا از هر جایی در ترمینال قابل دسترسی باشد. استفاده از sudo ممکن است برای نصب سراسری نیاز باشد بسته به نحوه پیکربندی Node.js و NPM شما.

پس از نصب می توانید با دستور pm2 --version از نصب صحیح آن اطمینان حاصل کنید.

راه اندازی Uptime Kuma با PM2

حالا که PM2 نصب شده است می توانید از آن برای اجرای اسکریپت شروع Uptime Kuma استفاده کنید. این کار باعث می شود Uptime Kuma به عنوان یک فرآیند پس زمینه تحت نظارت PM2 اجرا شود.

ابتدا به پوشه نصب Uptime Kuma بروید (مثلاً `/opt/uptime-kuma`):

cd /opt/uptime-kuma

سپس Uptime Kuma را با PM2 اجرا کنید. شما باید اسکریپت اصلی برنامه را مشخص کنید که معمولاً فایل server/server.js در نسخه فعلی Uptime Kuma است:

pm2 start server/server.js –name uptime-kuma

دستور pm2 start فرآیند مشخص شده را شروع می کند. فلگ --name uptime-kuma یک نام مستعار برای این فرآیند در PM2 تعیین می کند که مدیریت آن را آسان تر می کند. پس از اجرای این دستور PM2 لیستی از فرآیندهای در حال اجرا را نمایش می دهد که باید شامل `uptime-kuma` با وضعیت `online` باشد.

برای مشاهده وضعیت فرآیندهای مدیریت شده توسط PM2 می توانید از دستور pm2 status یا pm2 list استفاده کنید.

تنظیم اجرای خودکار در هنگام بوت

یکی از مهم ترین مزایای استفاده از PM2 قابلیت تنظیم آن برای شروع خودکار فرآیندهای مدیریت شده در هنگام بوت سیستم عامل است. این کار تضمین می کند که حتی پس از راه اندازی مجدد سرور Ubuntu Uptime Kuma به صورت خودکار شروع به کار کند و نیازی به دخالت دستی نباشد.

PM2 دستوری دارد که یک اسکریپت راه اندازی خودکار (startup script) برای سیستم عامل شما تولید می کند. برای Ubuntu که معمولاً از systemd استفاده می کند دستور به شکل زیر است:

pm2 startup systemd

این دستور یک دستور دیگر را به شما خروجی می دهد که باید با دسترسی روت (با sudo) آن را اجرا کنید. این دستور تولید شده سرویس PM2 را به systemd اضافه می کند تا هنگام بوت شدن سیستم اجرا شود و فرآیندهایی که PM2 مدیریت می کند را نیز مجدداً راه اندازی کند.

پس از اجرای دستور تولید شده توسط pm2 startup systemd باید فرآیندهای فعلی PM2 را ذخیره کنید تا PM2 بداند کدام فرآیندها باید در هنگام بوت راه اندازی شوند:

pm2 save

با اجرای این دو دستور Uptime Kuma که توسط PM2 مدیریت می شود پس از هر بار راه اندازی مجدد سرور Ubuntu به صورت خودکار شروع به کار خواهد کرد.

دسترسی به رابط کاربری و پیکربندی نهایی

حالا که Uptime Kuma به عنوان یک سرویس پس زمینه در حال اجراست قدم بعدی دسترسی به رابط کاربری تحت وب آن از طریق مرورگر و انجام تنظیمات اولیه است. به طور پیش فرض Uptime Kuma بر روی پورت 3001 اجرا می شود. برای دسترسی به آن از خارج از سرور ممکن است نیاز به باز کردن این پورت در فایروال سرور Ubuntu خود داشته باشید.

پس از اطمینان از باز بودن پورت می توانید از طریق آدرس IP یا نام دامنه سرور و پورت مشخص شده به رابط کاربری متصل شوید و اولین حساب کاربری ادمین را ایجاد کنید.

پیکربندی فایروال (UFW)

اگر از فایروال UFW (Uncomplicated Firewall) در Ubuntu استفاده می کنید (که یک روش توصیه شده برای افزایش امنیت سرور است) باید پورتی که Uptime Kuma روی آن گوش می دهد (به طور پیش فرض 3001) را برای ترافیک ورودی باز کنید. این کار به شما اجازه می دهد از کامپیوتر دیگری در شبکه یا اینترنت به رابط کاربری Uptime Kuma دسترسی پیدا کنید.

برای باز کردن پورت 3001 در UFW دستور زیر را اجرا کنید:

sudo ufw allow 3001/tcp

اگر UFW فعال نیست می توانید با دستور sudo ufw enable آن را فعال کنید (توجه داشته باشید که فعال کردن فایروال بدون تنظیمات قبلی ممکن است دسترسی شما به سرور را قطع کند پس با احتیاط عمل کنید یا ابتدا پورت SSH را باز کنید).

برای بررسی وضعیت فایروال و اطمینان از باز بودن پورت 3001 از دستور sudo ufw status استفاده کنید.

دسترسی از طریق مرورگر و تنظیمات اولیه

پس از اطمینان از اجرای سرویس Uptime Kuma و باز بودن پورت مربوطه در فایروال می توانید مرورگر وب خود را باز کرده و با استفاده از آدرس IP عمومی یا نام دامنه سرور Ubuntu و پورت Uptime Kuma به رابط کاربری آن دسترسی پیدا کنید.

آدرس معمولاً به این شکل است: http://your_server_ip_or_domain:3001

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

اکنون نصب پایه Uptime Kuma کامل شده است و می توانید از امکانات آن برای مانیتورینگ استفاده کنید.

عیب یابی و نگهداری Uptime Kuma

در طول فرآیند نصب یا پس از آن ممکن است با مشکلاتی مواجه شوید. همچنین نگهداری منظم و به روزرسانی Uptime Kuma برای اطمینان از عملکرد صحیح امنیت و بهره مندی از آخرین قابلیت ها ضروری است. این بخش به برخی مسائل رایج و نحوه رسیدگی به آن ها و همچنین فرآیند به روزرسانی می پردازد.

آشنایی با ابزارهای عیب یابی مانند مشاهده لاگ های PM2 و بررسی وضعیت سرویس ها می تواند در حل مشکلات بسیار کمک کننده باشد. همچنین دنبال کردن مستندات رسمی Uptime Kuma برای نکات پیشرفته تر توصیه می شود.

عیب یابی مشکلات رایج

اگر Uptime Kuma پس از نصب اجرا نمی شود یا نمی توانید به رابط کاربری آن دسترسی پیدا کنید چند مرحله عیب یابی وجود دارد که می توانید انجام دهید:

  • بررسی وضعیت سرویس PM2 و فرآیند Uptime Kuma: از دستور pm2 status یا pm2 list استفاده کنید تا مطمئن شوید فرآیند `uptime-kuma` در وضعیت `online` قرار دارد. اگر وضعیت چیز دیگری است (مانند `errored` یا `stopped`) می توانید سعی کنید آن را مجدداً راه اندازی کنید: pm2 restart uptime-kuma
  • مشاهده لاگ های PM2: PM2 لاگ های خروجی استاندارد و خطاهای استاندارد برنامه را ثبت می کند. برای دیدن لاگ های Uptime Kuma از دستور pm2 logs uptime-kuma استفاده کنید. این لاگ ها می توانند اطلاعات ارزشمندی در مورد دلیل عدم شروع یا از کار افتادن برنامه ارائه دهند.
  • بررسی فایروال: مطمئن شوید که پورت Uptime Kuma (پیش فرض 3001) در فایروال سرور (UFW) باز است و ترافیک ورودی به آن اجازه داده می شود. دستور sudo ufw status را بررسی کنید.
  • بررسی پیش نیازها: اطمینان حاصل کنید که Node.js و NPM به درستی نصب شده اند و نسخه های آن ها با نیازمندی های Uptime Kuma سازگار است.
  • بررسی تنظیمات پورت: اگر پورت پیش فرض 3001 را تغییر داده اید مطمئن شوید که هم Uptime Kuma روی پورت جدید پیکربندی شده و هم آن پورت در فایروال باز شده است.

در بسیاری از موارد مشاهده لاگ ها (pm2 logs uptime-kuma) دلیل اصلی مشکل را مشخص می کند.

بروزرسانی Uptime Kuma

توسعه Uptime Kuma فعال است و نسخه های جدید با قابلیت ها بهبودها و اصلاحات امنیتی به طور منظم منتشر می شوند. به روز نگه داشتن نصب شما برای بهره مندی از این موارد و حفظ امنیت توصیه می شود. فرآیند به روزرسانی به طور کلی شامل دریافت آخرین تغییرات از مخزن Git و راه اندازی مجدد سرویس است.

برای به روزرسانی Uptime Kuma:

  • ابتدا به پوشه نصب Uptime Kuma بروید (مثلاً `/opt/uptime-kuma`):

cd /opt/uptime-kuma

  • سپس آخرین تغییرات را از مخزن GitHub دریافت کنید:

git pull origin master (یا git pull origin main بسته به نام شاخه اصلی)

  • پس از دریافت تغییرات ممکن است وابستگی های جدیدی اضافه شده باشند. وابستگی ها را دوباره نصب کنید:

npm install –production

  • در نهایت سرویس Uptime Kuma را از طریق PM2 راه اندازی مجدد کنید تا تغییرات اعمال شوند:

pm2 restart uptime-kuma

با انجام این مراحل نصب Uptime Kuma شما به آخرین نسخه موجود به روزرسانی می شود.

سوالات متداول (FAQ)

آیا Uptime Kuma رایگان است؟

بله Uptime Kuma یک نرم افزار متن باز و کاملاً رایگان است که می توانید بدون پرداخت هیچ هزینه ای آن را دانلود نصب و استفاده کنید. تمام قابلیت های آن در دسترس شماست.

Uptime Kuma از چه پورتی برای دسترسی وب استفاده می کند؟

به طور پیش فرض Uptime Kuma بر روی پورت 3001 برای ارائه رابط کاربری تحت وب خود گوش می دهد. این پورت را می توانید در صورت نیاز در فایل پیکربندی یا متغیرهای محیطی تغییر دهید.

چگونه می توانم Uptime Kuma را امن تر کنم؟

برای افزایش امنیت توصیه می شود دسترسی به رابط کاربری را از طریق یک پروکسی معکوس مانند Nginx یا Caddy با فعال سازی HTTPS و محدود کردن دسترسی از طریق فایروال (فقط به IPهای مورد نیاز یا شبکه های داخلی) انجام دهید.

آیا امکان مانیتورینگ سرورهای ویندوز با Uptime Kuma نصب شده روی Ubuntu وجود دارد؟

بله Uptime Kuma می تواند هر سرویسی که از طریق شبکه قابل دسترسی است را مانیتور کند صرف نظر از اینکه آن سرویس روی چه سیستم عاملی اجرا می شود. شما می توانید وبسایت ها پورت ها یا سرویس های در حال اجرا روی سرور ویندوز را از Uptime Kuma روی Ubuntu مانیتور کنید.

Uptime Kuma اطلاعات خود را در کجا ذخیره می کند؟

به طور پیش فرض Uptime Kuma اطلاعات پیکربندی و داده های مانیتورینگ خود را در یک فایل پایگاه داده SQLite در پوشه نصب خود (معمولاً در زیرپوشه `data`) ذخیره می کند. می توانید مسیر ذخیره سازی را با متغیر محیطی تغییر دهید.