این راهنما توضیح میدهد چگونه Node.js (محیط اجرای جاوااسکریپت) و npm (مدیر بسته) را روی یک VPS Ubuntu یا Debian نصب کنید تا بتوانید برنامههای وب (Express، NestJS، ابزارهای build و غیره) را اجرا کنید.
پیشنیازها
- VPS لینوکس با دسترسی
sudoیا روت (root) - Ubuntu 20.04+ یا Debian 11+ (64 بیتی)
- اتصال SSH فعال
توصیه
برای buildهای مکرر (npm install، کامپایلها)، یک VPS با دیسک سریع انتخاب کنید، مثلاً VPSهای NVMe ما.
روش پیشنهادی: NodeSource (LTS)
1. بهروزرسانی سیستم
Bashsudo apt update && sudo apt upgrade -y
2. نصب پیشنیازها
Bashsudo apt install -y ca-certificates curl gnupg
3. افزودن کلید و مخزن NodeSource (مثال: Node.js 22.x LTS)
عدد 22.x را با شاخه LTS مورد نظر خود جایگزین کنید؛ برای این کار مستندات NodeSource را ببینید.
Bashcurl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
4. نصب Node.js
Bashsudo apt install -y nodejs
5. بررسی نصب
Bashnode -v npm -v
جایگزین سریع: بستههای Debian/Ubuntu
Bashsudo apt install -y nodejs npm
نسخهها ممکن است قدیمیتر از نسخههای NodeSource باشند. برای محیط production معمولاً روش NodeSource یا یک مدیر نسخه (nvm) بهتر است.
بهروزرسانی npm (اختیاری)
Bashsudo npm install -g npm@latest
بهترین روشها
- در پروژههای خود
npmرا با کاربر روت اجرا نکنید: یک کاربر اختصاصی بسازید یا ازsudo -u monuserاستفاده کنید. - برای محیط production، استفاده از PM2 یا یک سرویس systemd را در نظر بگیرید تا برنامه هنگام بوت دوباره راهاندازی شود.
- فقط پورتهای لازم را باز کنید (فایروال، و یک reverse proxy مثل Nginx جلوی برنامه).
عیبیابی
- Permission denied هنگام
npm install -g: یک مسیر سراسری (global) برای کاربر خود تنظیم کنید یا ازnvmاستفاده کنید. - Command not found پس از نصب: از SSH خارج شوید و دوباره وارد شوید، یا یک shell جدید باز کنید.
برای ادامه: امنسازی SSH و Nginx + Certbot را ببینید تا برنامه خود را روی HTTPS در دسترس قرار دهید.