كيفية تثبيت NodeBB على CentOS 7

NodeBB هو برنامج منتدى حديث ومفتوح المصدر و NodeJS.

مع وضع العملاء في الاعتبار ، يوفر NodeBB لأصحاب المجتمع ميزات قوية وسهولة الاستخدام لدفع مشاركة المجتمع.

في هذه المقالة ، سنقوم بتثبيت NodeBB على CentOS 7.

المتطلبات الأساسية

  • نسخة خادم Vultr CentOS 7 x64 تم نشرها حديثًا على الأقل 1 غيغابايت من ذاكرة الوصول العشوائي.
  • تسجيل الدخول باسم rootالمستخدم.
  • في EPELمستودع يم.

الخطوة 1: تحديث النظام

قم بتسجيل الدخول إلى الخادم الخاص بك عبر SSH باستخدام مستخدم sudo لتثبيت epelوتحديث النظام وإعادة التشغيل لتطبيق التحديثات.

yum install epel-release -y
yum update -y && sudo shutdown -r now

الخطوة 2: تثبيت التبعيات لـ NodeBB

بعد ذلك ، سنقوم بتثبيت جميع تبعيات نظام NodeBB المطلوبة:

yum -y groupinstall "Development Tools"
yum -y install git redis ImageMagick npm

ابدأ redisواجعله يعمل عند كل بدء تشغيل للنظام:

systemctl start redis.service
systemctl enable redis.service

الخطوة 3: قم بتثبيت NodeJS باستخدام nvm

استخدم الأوامر التالية لتثبيت NodeJS v6.9.5- أحدث إصدار LTS من NodeJS في وقت كتابة هذا المقال.

ملاحظة: سوف يستدعي الأمر الثاني أدناه nvm v0.33.0، أحدث إصدار من nvm في وقت كتابة هذا المقال. يمكنك دائمًا الاطلاع على أحدث إصدار من nvm هنا ثم تعديل هذا الأمر وفقًا لذلك.

cd
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
source ~/.bash_profile
nvm list-remote
nvm install v6.9.5

الخطوة 4: تثبيت NodeBB

قم بتثبيت أحدث إصدار من NodeBB ، NodeBB v1.4.3، كما يلي:

cd /opt
git clone -b v1.4.3 https://github.com/NodeBB/NodeBB nodebb
cd nodebb
npm install

بعد التثبيت ، قم بتشغيل ./nodebbالبرنامج النصي مع setupالعلم من أجل إعداد NodeBB:

./nodebb setup

أجب عن بعض الأسئلة على النحو التالي لاستخدام الإعدادات الافتراضية مع قاعدة بيانات redis. عند الاقتضاء ، اضغط Enterعلى لقبول الإعداد الافتراضي الموضح بين قوسين.

  • عنوان URL المستخدم للوصول إلى NodeBB (http: // localhost: 4567) <Enter>
  • الرجاء إدخال سر NodeBB (bb3244f1-3a7e-4ee2-bc77-5032fd4c8b00) <Enter>
  • قاعدة البيانات التي ستستخدم (mongo) redis
  • استضافة IP أو عنوان مثيل Redis الخاص بك (127.0.0.1) <Enter>
  • منفذ مضيف لمثيل Redis (6379) <Enter>
  • كلمة المرور لقاعدة بيانات Redis الخاصة بك <Enter>
  • قاعدة البيانات التي ستستخدم (0..n) (0) <Enter>
  • اسم مستخدم المسؤول admin
  • عنوان البريد الإلكتروني للمسؤول admin@example.com
  • كلمه السر yourpassword
  • تأكيد كلمة المرور yourpassword

بعد تثبيت NodeBB وتكوينه بنجاح ، يمكنك بدء / إيقاف / إعادة تشغيل NodeBB يدويًا عن طريق تشغيل:

./nodebb start
./nodebb stop
./nodebb restart

الخطوة 5: إبقاء NodeBB قيد التشغيل إلى الأبد

Forever هي أداة يمكنها الحفاظ على تشغيل التطبيق القائم على nodejs. في الإنتاج ، هذه ميزة مفيدة.

أولاً ، تحتاج إلى إيقاف NodeBB:

./nodebb stop

التثبيت للأبد عالميًا:

npm install forever -g

ابدأ تشغيل NodeBB للأبد:

cd /opt/nodebb
forever start app.js

يمكنك التأكد من أن NodeBB يعمل باستخدام curlأمر:

curl -I http://localhost:4567

يجب أن يشبه الإخراج:

HTTP/1.1 200 OK
X-Powered-By: NodeBB
X-Frame-Options: SAMEORIGIN
Access-Control-Allow-Origin: null
Content-Type: text/html; charset=utf-8
Content-Length: 19845
ETag: W/"4d85-cXlw1a5DyxHkfjSEd7Ru5Q"
set-cookie: express.sid=s%3AqoIQ1-JSyw1tvrrhyXiP7Sm5D-gDJ9HT.Aum4qMXBPiCgZ7Il%2BtrePafZJWEt2dIJlS%2BBTRZjWZs; Path=/; Expires=Sun, 26 Feb 2017 15:14:35 GMT; HttpOnly
Vary: Accept-Encoding
Date: Sun, 12 Feb 2017 15:14:36 GMT
Connection: keep-alive

الخطوة 6: إعداد وكيل Nginx عكسي

نظرًا لأن NodeBB يعمل على localhost افتراضيًا ، فأنت بحاجة إلى إعداد وكيل Nginx عكسي للسماح بالوصول إلى الويب.

تثبيت Nginx باستخدام YUM:

yum install nginx -y

تعديل إعدادات Nginx:

vi /etc/nginx/nginx.conf

ابحث عن location / {}المقطع داخل http {}المقطع:

http {

    location / {
    }

}

أدخل الأسطر أدناه في location / {}المقطع:

    proxy_pass http://127.0.0.1:4567;
    proxy_http_version 1.1;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_cache_bypass $http_upgrade;

يجب أن تكون النتيجة النهائية:

http {

location / {
    proxy_pass http://127.0.0.1:4567;
    proxy_http_version 1.1;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_cache_bypass $http_upgrade;
}

}

احفظ واخرج:

:wq!

ابدأ وتمكين خدمة Nginx:

systemctl start nginx.service
systemctl enable nginx.service

الخطوة 7: تعديل قواعد جدار الحماية للسماح للزوار بالوصول:

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload

الخطوة 8: الوصول إلى NodeBB

أخيرًا ، وجه متصفح الويب الخاص بك http://203.0.113.1إلى زيارة موقع NodeBB الذي تم إنشاؤه حديثًا. يمكنك تسجيل الدخول باستخدام بيانات اعتماد المشرف التي قمت بإعدادها مسبقًا. لا تتردد في التنقل وتخصيص NodeBB بعد تسجيل الدخول كمسؤول.

اترك تعليقاً

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد