Askbot – Erstellen Sie Ihr eigenes Q&A-Forum wie Stack Overflow
Askbot ist eine einfache, aber leistungsstarke, schnelle und hochgradig anpassbare Open-Source-Software zum Erstellen eines Frage-und-Antwort-Forums (Q&A). Es ist von StackOverflow und YahooAnswers inspiriert und in Python auf Basis des Django-Webframeworks geschrieben.
Es ermöglicht ein effizientes Fragen- und Antwort-Wissensmanagement, daher nutzen Organisationen wie die Q&A-Foren von Fedora und die Q&A-Foren von LibreOffice es gut. Askbot kann als eigenständige Anwendung arbeiten oder in Ihre vorhandenen Django-Apps oder andere Webplattformen integriert werden.
In diesem Tutorial erfahren Sie, wie Sie AskBot unter CentOS 7 installieren. Um das Tutorial abzuschließen, benötigen Sie eine minimale CentOS 7-Serverinstallation mit Root-Zugriff.
Schritt 1: Erforderliche Abhängigkeiten installieren
Wir beginnen mit der Installation der erforderlichen Abhängigkeiten wie Entwicklungstools, indem wir den folgenden Befehl in einem Terminal verwenden.
yum group install 'Development Tools'
Danach installieren wir das Epel-Repository, falls es noch nicht auf Ihrem System installiert ist.
yum install epel-release
Zuletzt werden wir einige der Python-Abhängigkeiten installieren, die für die spätere Ausführung von AskBot erforderlich sind.
yum install python-pip python-devel python-six
Falls Python-Pip nicht mit dem obigen Befehl installiert wird, können Sie es mit dem folgenden Befehl installieren.
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" && python get-pip.py
Schritt 2: Installieren Sie die PostgreSQL-Datenbank
AskBot benötigt eine Datenbank, in der es seine Daten speichert. Es verwendet PostgreSQL, daher müssen wir es auf unserem System installieren und konfigurieren.
Mit dem folgenden Befehl können Sie die Installation abschließen.
yum -y install postgresql-server postgresql-devel postgresql-contrib
Wenn die Installation abgeschlossen ist, initialisieren Sie PostgreSQL mit.
postgresql-setup initdb
Wenn alles normal läuft, sollten Sie Folgendes sehen:
Initializing database ... OK
Unser nächster Schritt besteht darin, PostgreSQL zu starten und den Start beim Booten zu ermöglichen:
systemctl start postgresql
systemctl enable postgresql
Nachdem unser Datenbankserver nun betriebsbereit ist, melden wir uns als postgres-Benutzer an, um eine Datenbank für unsere AskBot-Installation zu erstellen.
su - postgres
Dann verwenden Sie:
psql
Jetzt befinden Sie sich in der PostgreSQL-Eingabeaufforderung und sind bereit, unsere Datenbank und den Datenbankbenutzer zu erstellen und dem Benutzer Berechtigungen für die neue Datenbank zu erteilen. Erstellen Sie die Datenbank mit dem folgenden Befehl. Sie können den Datenbanknamen jederzeit nach Ihren Wünschen ändern:
postgres=# create database askbot_db;
Als nächstes erstellen Sie den Datenbankbenutzer. Ersetzen Sie „password_here“ durch ein sicheres Passwort:
postgres=# create user askbot_user with password 'password_here';
Gewähren Sie den Benutzerberechtigungen für die askbot_db:
postgres=# grant all privileges on database askbot_db to askbot_user;
Als nächstes müssen wir die PostgreSQL-Konfiguration bearbeiten, um unsere Authentifizierungsmethode auf md5 zu ändern. Verwenden Sie dazu Ihren bevorzugten Texteditor und bearbeiten Sie die Datei /var/lib/pgsql/data/pg_hba.conf:
vim /var/lib/pgsql/data/pg_hba.conf
Die Konfigurationen sollten so aussehen:
Speichern Sie anschließend die Änderungen und starten Sie PostgreSQL neu:
systemctl restart postgresql
Schritt 3: Installieren Sie das AskBot-Forum
Schließlich können wir mit der Installation von AskBot fortfahren. Erstellen Sie zunächst einen neuen Benutzer auf Ihrem System. Wir werden es askbot nennen:
useradd -m -s /bin/bash askbot
Passwort für den neuen Benutzer einrichten:
passwd askbot
Als nächstes müssen wir den Benutzer zur Radgruppe im System hinzufügen:
usermod -a -G wheel askbot
Jetzt verwenden wir pip, um das Paket virtualenv zu installieren:
pip install virtualenv six
Jetzt melden wir uns als askbot-Benutzer an und erstellen eine neue virtuelle Umgebung:
su - askbot
virtualenv tecmint/
Beispielausgabe
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.
Der nächste Schritt besteht darin, die virtuelle Umgebung mit dem folgenden Befehl zu aktivieren:
source tecmint/bin/activate
Jetzt können wir AskBot über pip installieren.
pip install six askbot psycopg2
Die Installation kann einige Minuten dauern. Sobald es abgeschlossen ist, können wir unsere Installation in einem temporären Verzeichnis testen. Stellen Sie sicher, dass Sie dieses Verzeichnis NICHT askbot nennen.
mkdir forum_test && cd forum_test
Als nächstes initialisieren wir ein neues AskBot-Projekt mit:
askbot-setup
Ihnen werden einige Fragen gestellt, bei denen Sie das Installationsverzeichnis auswählen müssen – verwenden Sie „“. ”
(ohne Anführungszeichen), um das aktuelle Verzeichnis auszuwählen. Als nächstes müssen Sie den zuvor vorbereiteten Datenbanknamen, den Datenbankbenutzer und das zugehörige Passwort eingeben.
Als nächstes generieren wir die statischen Dateien für Django mit:
python manage.py collectstatic
Als nächstes generieren wir die Datenbank:
python manage.py syncdb
Und schließlich starten Sie den Server mit:
python manage.py runserver 127.0.0.1:8080
Wenn Sie in Ihrem Browser zu http://127.0.0.1:8080
gehen, sollte die Askbot-Schnittstelle angezeigt werden.
Das ist alles! Askbot ist eine Open-Source-Software für einfache, schnelle und hochgradig anpassbare Frage-und-Antwort-Foren (Q&A). Es unterstützt ein effizientes Frage- und Antwort-Wissensmanagement. Wenn bei der Installation Fehler aufgetreten sind oder Sie andere diesbezügliche Fragen haben, können Sie uns über das unten stehende Feedback-Formular erreichen.