Askbot - Creează-ți propriul forum de întrebări și răspunsuri, cum ar fi Stack Overflow


Askbot este un software open source, simplu, dar puternic, rapid și extrem de personalizabil pentru crearea unui forum de întrebări și răspunsuri (Întrebări și răspunsuri). Este inspirat de StackOverflow și YahooAnswers și scris în Python deasupra cadrului web Django.

Permite un management eficient al cunoștințelor întrebărilor și răspunsurilor, astfel încât organizații precum forumurile de întrebări și răspunsuri ale Fedora și forumurile de întrebări și răspunsuri ale LibreOffice îl folosesc bine. Askbot poate funcționa ca o aplicație autonomă sau poate fi integrat cu aplicațiile Django existente sau alte platforme web.

În acest tutorial veți afla cum să instalați AskBot pe CentOS 7. Pentru a finaliza tutorialul, va trebui să aveți o instalare minimă de server CentOS 7 cu acces root.

Pasul 1: Instalați dependențele necesare

Vom începe prin a instala dependențele necesare, cum ar fi instrumentele de dezvoltare, utilizând următoarea comandă într-un terminal.

yum group install 'Development Tools'

După aceea, vom instala depozitul Epel, dacă nu a fost deja instalat pe sistemul dvs.

yum install epel-release

În cele din urmă, vom instala unele dintre dependențele Python necesare pentru a rula ulterior AskBot.

yum install python-pip python-devel python-six

În cazul în care python-pip nu este instalat cu comanda de mai sus, îl puteți instala folosind următoarea comandă.

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

Pasul 2: Instalați baza de date PostgreSQL

AskBot necesită o bază de date în care își va stoca datele. Utilizează PostgreSQL, așa că va trebui să-l instalăm și să-l configuram pe sistemul nostru.

Puteți folosi următoarea comandă pentru a finaliza instalarea.

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

Când instalarea este finalizată, inițializați PostgreSQL cu.

postgresql-setup initdb

Dacă totul merge normal, ar trebui să vedeți următoarele:

Initializing database ... OK

Următorul nostru pas este să pornim PostgreSQL și să-l activăm să pornească la pornire:

systemctl start postgresql
systemctl enable postgresql

Acum că serverul nostru de baze de date este activ și rulează, ne vom autentifica ca utilizator postgres pentru a crea o bază de date pentru instalarea AskBot.

su - postgres

Apoi folosiți pentru a:

psql

Acum sunteți promptul PostgreSQL, gata să ne creați baza de date, utilizatorul bazei de date și să acordați privilegii utilizatorului pe noua bază de date. Creați baza de date utilizând comanda de mai jos, nu ezitați să schimbați numele bazei de date în funcție de preferințele dvs.:

postgres=# create database askbot_db;

Apoi creați utilizatorul bazei de date. Înlocuiți „password_here” cu o parolă puternică:

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

Acordați privilegii utilizatorului pe askbot_db:

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

În continuare, va trebui să edităm configurația PostgreSQL pentru a ne schimba metoda de autentificare la md5. Pentru a face acest lucru, utilizați editorul de text preferat și editați fișierul /var/lib/pgsql/data/pg_hba.conf:

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

Configurațiile ar trebui să arate astfel:

Apoi salvați modificările și reporniți PostgreSQL:

systemctl restart postgresql

Pasul 3: Instalați AskBot Forum

În cele din urmă, putem continua cu instalarea AskBot. Începeți prin a crea un utilizator nou pe sistemul dvs. Îl vom numi askbot:

useradd -m -s /bin/bash askbot

Configurați parola pentru noul utilizator:

passwd askbot

În continuare, va trebui să adăugăm utilizatorul la grupul de roți din sistem:

usermod -a -G wheel askbot

Acum vom folosi pip pentru a instala pachetul virtualenv:

pip install virtualenv six

Acum ne vom conecta ca utilizator askbot și vom crea un nou mediu virtual:

su - askbot
virtualenv tecmint/
Ieșire eșantion
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.

Următorul pas este să activați mediul virtual cu următoarea comandă:

source tecmint/bin/activate

Acum suntem gata să instalăm AskBot prin pip.

pip install six askbot psycopg2

Instalarea poate dura câteva minute. Odată ce este finalizată, ne putem testa instalarea într-un director temporar. Asigurați-vă că NU numiți acel director askbot.

mkdir forum_test && cd forum_test

În continuare vom inițializa un nou proiect AskBot cu:

askbot-setup

Vi se vor pune câteva întrebări în care va trebui să selectați directorul de instalare – utilizați “. ” (fără ghilimele) pentru a alege directorul curent. În continuare, va trebui să introduceți numele bazei de date pregătite anterior, utilizatorul bazei de date și parola acesteia.

În continuare vom genera fișierele statice pentru Django cu:

python manage.py collectstatic

În continuare generăm baza de date:

python manage.py syncdb

Și în sfârșit porniți serverul cu:

python manage.py runserver 127.0.0.1:8080

Când accesați browserul la http://127.0.0.1:8080 – ar trebui să vedeți interfața askbot.

Asta e tot! Askbot este un software de forum pentru întrebări și răspunsuri (Întrebări și răspunsuri) cu sursă deschisă, simplu, rapid și extrem de personalizabil. Sprijină gestionarea eficientă a cunoștințelor cu întrebări și răspunsuri. Dacă ați întâmpinat erori în timpul instalării sau aveți alte întrebări legate de aceasta, utilizați formularul de feedback de mai jos pentru a ne contacta.