
Node.js هو بيئة تشغيل جافا سكريبت قوية لبناء تطبيقات قابلة للتطوير. عند نقل التطبيقات إلى بيئة الإنتاج، تحتاج إلى تكوين خادمك بشكل آمن وفعال. في هذا الدليل، ستتعلم كيفية إعداد تطبيق Node.js جاهز للإنتاج على Ubuntu 24.04 باستخدام PM2 وNginx وLet’s Encrypt.
المتطلبات الأساسية
قبل البدء، تأكد من أن لديك:
- خادم Ubuntu 24.04.
- مستخدم غير جذري مع صلاحيات sudo.
- اسم نطاق يشير إلى عنوان IP الخاص بخادمك.
للمزيد من المعلومات حول Node.js، قم بزيارة الموقع الرسمي لـ Node.js.
الخطوة 1 — تثبيت node.js
يوفر Ubuntu 24.04 مستودعات محدثة. ومع ذلك، للحصول على أحدث إصدار LTS، استخدم NodeSource:
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
تحقق من التثبيت:
node -v
npm -v
بمجرد اكتمال التثبيت، يجب أن يكون Node.js وnpm متاحين.
الخطوة 2 — إنشاء تطبيق node.js تجريبي
أولاً، قم بإنشاء مجلد وتهيئة مشروعك:
mkdir ~/myapp
cd ~/myapp
npm init -y
npm install express
الآن قم بإنشاء app.js
:
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
app.get('/', (req, res) => {
res.send('Hello from Node.js on Ubuntu 24.04!');
});
app.listen(PORT, () => {
console.log(`Server running on port ${PORT}`);
});
قم بتشغيل التطبيق:
node app.js
ثم قم بزيارة http://your_server_ip:3000
للتأكد من أنه يعمل.
الخطوة 3 — إدارة العمليات باستخدام PM2
من الضروري الحفاظ على تشغيل التطبيقات في بيئة الإنتاج. لذلك، قم بتثبيت PM2:
sudo npm install -g pm2
pm2 start app.js
pm2 status
تمكين بدء تشغيل PM2 عند إعادة التشغيل:
pm2 startup systemd
pm2 save
لمزيد من التفاصيل، راجع وثائق PM2.
الخطوة 4 — تكوين nginx كوسيط عكسي
يضمن الوسيط العكسي إدارة سلسة لحركة المرور. ابدأ بتثبيت Nginx:
sudo apt install nginx -y
بعد ذلك، قم بإنشاء ملف تكوين جديد:
sudo nano /etc/nginx/sites-available/myapp
أدخل ما يلي:
server {
listen 80;
server_name your_domain.com www.your_domain.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
التفعيل وإعادة التشغيل:
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
الآن يجب أن يعرض نطاقك تطبيق Node.js. لمزيد من التحسينات، راجع وثائق Nginx.
الخطوة 5 — تأمين التطبيق باستخدام SSL
من الضروري تشفير حركة المرور. دعنا نستخدم Certbot وLet’s Encrypt.
تثبيت certbot:
sudo apt install certbot python3-certbot-nginx -y
الحصول على شهادات SSL وتثبيتها:
sudo certbot --nginx -d your_domain.com -d www.your_domain.com
أخيراً، اختبر التجديد التلقائي:
sudo certbot renew --dry-run
الخطوة 6 — تقوية ومراقبة الخادم
الأمان ضروري. لذلك، قم بتكوين جدار الحماية UFW:
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable
مراقبة التطبيق باستخدام PM2:
pm2 monit
بالإضافة إلى ذلك، يمكنك دمج أدوات مراقبة الخادم للحصول على رؤى أعمق.
الخاتمة
لديك الآن إعداد Node.js جاهز للإنتاج على Ubuntu 24.04. مع إدارة PM2 للعمليات، وNginx كوسيط عكسي، وLet’s Encrypt لتأمين حركة المرور، أصبح تطبيقك قابلاً للتطوير وآمناً. لمزيد من الأدلة مثل هذا، تحقق من صفحة سيرتي الذاتية لرؤية مشاريع البنية التحتية ذات الصلة.