في المقالة التالية سنلقي نظرة على Askbot. هذا هو برنامج مفتوح المصدر يستخدم لإنشاء منتديات إنترنت موجهة للأسئلة والأجوبة. بدأ الموقع في يوليو 2009 ، وكان في البداية مشابهًا لموقع Stack Overflow أو Yahoo! الإجابات. تم تطويره وصيانته بشكل أساسي بواسطة يفجيني فاديف.
Askbot هو منصة أسئلة وأجوبة مفتوحة المصدر (Q&A) تعتمد على Python و Django. مع Askbot ، يمكن لأي مستخدم إنشاء منصة الأسئلة والأجوبة الخاصة به. سنرى في الأسطر التالية كيف يمكن تثبيت Askbot على Ubuntu 20.04 أو 18.04.
بفضل هذا البرنامج ، يمكن لأي مستخدم إنشاء منتدى معرفة فعال للإجابة على الأسئلة والأجوبة، حيث سيتم عرض أفضل الإجابات أولاً ، مصنفة حسب العلامات. كما يتضمن أيضًا تحكمًا في المستخدم مع أنظمة المكافآت ، والتي تمنح المستخدمين الكرمة لنشر معلومات جيدة وذات صلة.
كيفية تثبيت Askbot على Ubuntu 20.04؟
تثبيت المتطلبات
لتثبيت Askbot ، يجب علينا أولاً وقبل كل شيء تثبيت بعض الحزم الضرورية في نظامنا لعملية صحيحة. سنحتاج فقط إلى فتح محطة طرفية (Ctrl + Alt + T) وتنفيذ الأوامر:
sudo apt update; sudo apt install python-dev python-setuptools python3-pip python3-psycopg2 libpq-dev
قم بتثبيت PostgreSQL
الآن بعد أن تم تثبيت الحزم السابقة ، دعنا تثبيت كيو. للقيام بذلك ، في المحطة الطرفية (Ctrl + Alt + T) ، سيكون الأمر المراد تنفيذه كما يلي:
sudo apt install postgresql postgresql-client
بعد تثبيت PostgreSQL ، يمكن استخدام الأوامر التالية ابدأ وتحقق من حالتك:
sudo systemctl start postgresql.service sudo systemctl status postgresql.service
أنشئ كلمة مرور مستخدم PostgreSQL
بعد تثبيت PostgreSQL ، إنها فكرة جيدة إنشاء أو تغيير كلمة مرور مستخدم Postgres الافتراضية. للقيام بذلك ، نحتاج ببساطة إلى تشغيل الأمر التالي في صدفة bash:
sudo passwd postgres
يجب أن يطلب منا الأمر أعلاه إنشاء كلمة مرور جديدة لمستخدم postgres. بعد تعيين كلمة مرور جديدة ، في كل مرة نريد الوصول إلى قذيفة PostgreSQL التفاعلية ، سيُطلب منا إدخال كلمة المرور التي أدخلناها للتو.
أنشئ قاعدة بيانات PostgreSQL
الآن وبعد تثبيت PostgreSQL ، سيتعين علينا استخدام الأوامر التالية من أجل قم بتوصيلنا بوحدة التحكم الخاصة بك. سيطلب منا هذا كتابة كلمة المرور التي كتبناها في الخطوة السابقة:
su - postgres psql
في وحدة تحكم shell ، سنكتب ما يلي إلى إنشاء قاعدة بيانات جديدة تسمى askbot:
create database askbot;
في هذه المرحلة ، الشيء التالي الذي يتعين علينا القيام به هو إنشاء مستخدم قاعدة بيانات اسمه askbotuser بكلمة مرور جديدة. سنحقق ذلك من خلال كتابة:
create user askbotusuario with password 'tu-contraseña';
بعد ذلك ، سيتعين علينا ذلك منح ل askbotuser الوصول الكامل إلى قاعدة بيانات askbot. ثم علينا فقط الخروج من الصدفة:
grant all privileges on database askbot to askbotusuario;
\q exit
بعد إنشاء قاعدة البيانات والمستخدم أعلاه ، دعنا قم بتحرير ملف تكوين PostgreSQL وتمكين مصادقة md5. يمكننا القيام بذلك مع محررنا المفضل.
sudo vim /etc/postgresql/12/main/pg_hba.conf
داخل الملف ، في نهايته ، سنقوم بتحرير الأسطر المميزة في لقطة الشاشة التالية شاشة للإشارة إلى md5.
بعد تحرير الملف أعلاه ، نحفظه ونخرج. الآن سيتعين علينا إعادة تشغيل PostgreSQL بالأمر:
sudo systemctl restart postgresql
قم بتثبيت Askbot
لتثبيت Askbot ، سنحتاج إلى إنشاء حساب مستخدم مخصص. يمكننا تحقيق ذلك عن طريق تنفيذ الأوامر التالية لإنشاء حساب جديد يسمى askbot:
sudo useradd -m -s /bin/bash askbot sudo passwd askbot
ثم سنقوم تأكد من أن المستخدم يمكنه تشغيل sudo كجذر:
sudo usermod -a -G sudo askbot
عندما ننتهي ، سنقوم بتنفيذ هذا الأمر الآخر في Terminal إلى تثبيت بيئة Python الافتراضية (virtualenv):
sudo pip install virtualenv six
في نهاية التثبيت ، سنفعل التبديل إلى حساب askbot:
su - askbot
نواصل خلق بيئة افتراضية جديدة لـ askbot:
virtualenv askbot
ستكون الخطوة التالية قم بالتبديل إلى البيئة الافتراضية وتفعيلها:
cd askbot source bin/activate
ثم سنقوم بتثبيت وحدات Askbot و Six و PostgreSQL:
pip install --upgrade pip pip install six==1.10.0 pip install askbot==0.11.1 psycopg2
بعد التثبيت سنفعل قم بإنشاء دليل يسمى miapp لـ askbot وقم بتكوينه:
mkdir miapp cd miapp askbot-setup
أمر التكوين سيطلب تفاصيل البيئةكما ترى في الصورة التالية:
ثم سنكمل التكوين ادارة الأوامر:
cd askbot_site/ python manage.py collectstatic python manage.py migrate
قم بتشغيل التطبيق
الآن ل ابدأ خادم التطبيق، في الطرفية (Ctrl + Alt + T) سنستخدم الأمر:
python manage.py runserver --insecure 0.0.0.0:8080
عند هذه النقطة يجب أن نكون قادرين على الوصول إلى تطبيقنا عبر عنوان url:
http://localhost:8080
يمكننا أيضا قم بتسجيل الدخول إلى الواجهة الخلفية كمسؤول باستخدام عنوان url التالي. على الرغم من أنه سيتعين علينا استخدام بيانات اعتماد المسؤول:
http://localhost:8080/admin
إذا لم تتمكن من تسجيل الدخول إلى الواجهة الخلفية كمسؤول ، فيمكنك إنشاء حساب مسؤول متميز عن طريق تشغيل الأمر في الجهاز (Ctrl + Alt + T):
python manage.py createsuperuser
بعد هذا نستطيع استخدم بيانات الاعتماد التي تم إنشاؤها حديثًا للدخول إلى الخلفية الإدارية:
بالنسبة للأفراد والشركات الذين يتطلعون إلى إنشاء منتدى للأسئلة والأجوبة ، يمكن أن يكون Askbot مفيدًا. لمزيد من المعلومات حول هذا المشروع ، يمكن للمستخدمين الرجوع إلى الموقع الرسمي أو في المستودع على جيثب.