Askbot - Δημιουργήστε το δικό σας φόρουμ Q&A όπως το Stack Overflow


Το Askbot είναι ένα λογισμικό ανοιχτού κώδικα, απλό αλλά ισχυρό, γρήγορο και εξαιρετικά προσαρμόσιμο για τη δημιουργία φόρουμ ερωτήσεων και απαντήσεων (Q&A). Είναι εμπνευσμένο από το StackOverflow και το YahooAnswers και είναι γραμμένο σε Python πάνω από το πλαίσιο ιστού Django.

Επιτρέπει την αποτελεσματική διαχείριση της γνώσης ερωτήσεων και απαντήσεων, επομένως οργανισμοί όπως τα φόρουμ Q&A του Fedora και τα φόρουμ Q&A του LibreOffice το χρησιμοποιούν σωστά. Το Askbot μπορεί να λειτουργήσει ως αυτόνομη εφαρμογή ή μπορεί να ενσωματωθεί με τις υπάρχουσες εφαρμογές Django ή άλλες πλατφόρμες Ιστού.

Σε αυτό το σεμινάριο θα μάθετε πώς να εγκαταστήσετε το AskBot στο CentOS 7. Για να ολοκληρώσετε το σεμινάριο, θα χρειαστεί να έχετε ελάχιστη εγκατάσταση διακομιστή CentOS 7 με πρόσβαση root.

Βήμα 1: Εγκαταστήστε τις Απαιτούμενες Εξαρτήσεις

Θα ξεκινήσουμε εγκαθιστώντας τις απαιτούμενες εξαρτήσεις, όπως εργαλεία ανάπτυξης χρησιμοποιώντας την ακόλουθη εντολή σε ένα τερματικό.

yum group install 'Development Tools'

Μετά από αυτό, θα εγκαταστήσουμε το αποθετήριο Epel, εάν δεν έχει ήδη εγκατασταθεί στο σύστημά σας.

yum install epel-release

Τέλος, θα εγκαταστήσουμε ορισμένες από τις εξαρτήσεις python που απαιτούνται για την εκτέλεση του AskBot αργότερα.

yum install python-pip python-devel python-six

Σε περίπτωση που το python-pip δεν είναι εγκατεστημένο με την παραπάνω εντολή, μπορείτε να το εγκαταστήσετε χρησιμοποιώντας την παρακάτω εντολή.

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" && python get-pip.py

Βήμα 2: Εγκαταστήστε τη βάση δεδομένων PostgreSQL

Το AskBot απαιτεί μια βάση δεδομένων όπου θα αποθηκεύει τα δεδομένα του. Χρησιμοποιεί το PostgreSQL, επομένως θα χρειαστεί να το εγκαταστήσουμε και να το διαμορφώσουμε στο σύστημά μας.

Μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή για να ολοκληρώσετε την εγκατάσταση.

yum -y install postgresql-server postgresql-devel postgresql-contrib

Όταν ολοκληρωθεί η εγκατάσταση, αρχικοποιήστε το PostgreSQL με.

postgresql-setup initdb

Εάν όλα πάνε κανονικά, θα πρέπει να δείτε τα εξής:

Initializing database ... OK

Το επόμενο βήμα μας είναι να ξεκινήσουμε το PostgreSQL και να του ενεργοποιήσουμε την εκκίνηση:

systemctl start postgresql
systemctl enable postgresql

Τώρα που ο διακομιστής της βάσης δεδομένων μας είναι σε λειτουργία και λειτουργεί, θα συνδεθούμε ως χρήστης postgres για να δημιουργήσουμε μια βάση δεδομένων για την εγκατάσταση του AskBot.

su - postgres

Στη συνέχεια χρησιμοποιήστε για:

psql

Τώρα είστε η προτροπή PostgreSQL, έτοιμος να δημιουργήσετε τη βάση δεδομένων μας, χρήστη βάσης δεδομένων και να εκχωρήσετε δικαιώματα χρήστη στη νέα βάση δεδομένων. Δημιουργήστε τη βάση δεδομένων χρησιμοποιώντας την παρακάτω εντολή, μπορείτε να αλλάξετε το όνομα της βάσης δεδομένων σύμφωνα με τις προτιμήσεις σας:

postgres=# create database askbot_db;

Στη συνέχεια δημιουργήστε τον χρήστη της βάσης δεδομένων. Αντικαταστήστε το “password_here” με έναν ισχυρό κωδικό πρόσβασης:

postgres=# create user askbot_user with password 'password_here';

Παραχωρήστε τα δικαιώματα χρήστη στο askbot_db:

postgres=# grant all privileges on database askbot_db to askbot_user;

Στη συνέχεια, θα χρειαστεί να επεξεργαστούμε τη διαμόρφωση PostgreSQL για να αλλάξουμε τη μέθοδο ελέγχου ταυτότητας σε md5. Για να το κάνετε αυτό, χρησιμοποιήστε τον αγαπημένο σας επεξεργαστή κειμένου και επεξεργαστείτε το αρχείο /var/lib/pgsql/data/pg_hba.conf:

vim /var/lib/pgsql/data/pg_hba.conf

Οι διαμορφώσεις πρέπει να μοιάζουν με αυτό:

Στη συνέχεια αποθηκεύστε τις αλλαγές και επανεκκινήστε το PostgreSQL:

systemctl restart postgresql

Βήμα 3: Εγκαταστήστε το AskBot Forum

Τέλος, μπορούμε να προχωρήσουμε στην εγκατάσταση του AskBot. Ξεκινήστε δημιουργώντας νέο χρήστη στο σύστημά σας. Θα το ονομάσουμε askbot:

useradd -m -s /bin/bash askbot

Ρύθμιση κωδικού πρόσβασης για τον νέο χρήστη:

passwd askbot

Στη συνέχεια θα χρειαστεί να προσθέσουμε τον χρήστη στην ομάδα τροχών του συστήματος:

usermod -a -G wheel askbot

Τώρα θα χρησιμοποιήσουμε το pip για να εγκαταστήσουμε το πακέτο virtualenv:

pip install virtualenv six

Τώρα θα συνδεθούμε ως χρήστης askbot και θα δημιουργήσουμε νέο εικονικό περιβάλλον:

su - askbot
virtualenv tecmint/
Δείγμα εξόδου
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.

Το επόμενο βήμα είναι να ενεργοποιήσετε το εικονικό περιβάλλον με την ακόλουθη εντολή:

source tecmint/bin/activate

Τώρα είμαστε έτοιμοι να εγκαταστήσουμε το AskBot μέσω pip.

pip install six askbot psycopg2

Η εγκατάσταση μπορεί να διαρκέσει μερικά λεπτά. Μόλις ολοκληρωθεί, μπορούμε να δοκιμάσουμε την εγκατάστασή μας σε έναν προσωρινό κατάλογο. Βεβαιωθείτε ότι ΜΗΝ ονομάσετε αυτόν τον κατάλογο askbot.

mkdir forum_test && cd forum_test

Στη συνέχεια θα αρχικοποιήσουμε ένα νέο έργο AskBot με:

askbot-setup

Θα σας κάνουν μερικές ερωτήσεις όπου θα πρέπει να επιλέξετε τον κατάλογο εγκατάστασης – χρησιμοποιήστε “. ” (χωρίς εισαγωγικά) για να επιλέξετε τον τρέχοντα κατάλογο. Στη συνέχεια θα χρειαστεί να εισαγάγετε το όνομα της βάσης δεδομένων που προετοιμάστηκε νωρίτερα, τον χρήστη της βάσης δεδομένων και τον κωδικό πρόσβασής του.

Στη συνέχεια θα δημιουργήσουμε τα στατικά αρχεία για το Django με:

python manage.py collectstatic

Στη συνέχεια δημιουργούμε τη βάση δεδομένων:

python manage.py syncdb

Και τέλος ξεκινήστε τον διακομιστή με:

python manage.py runserver 127.0.0.1:8080

Όταν μεταβείτε στο πρόγραμμα περιήγησής σας στη διεύθυνση http://127.0.0.1:8080 – θα πρέπει να δείτε τη διεπαφή askbot.

Αυτό είναι όλο! Το Askbot είναι ένα λογισμικό φόρουμ ανοιχτού κώδικα, απλό, γρήγορο και εξαιρετικά προσαρμόσιμο για ερωτήσεις και απαντήσεις (Q&A). Υποστηρίζει αποτελεσματική διαχείριση γνώσης ερωτήσεων και απαντήσεων. Εάν αντιμετωπίσατε σφάλματα κατά την εγκατάσταση ή έχετε άλλα σχετικά ερωτήματα, χρησιμοποιήστε την παρακάτω φόρμα σχολίων για να επικοινωνήσετε μαζί μας.