Website-Suche

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.