Askbot - Oħloq il-Forum tal-Q&A Tiegħek Bħal Stack Overflow


Askbot huwa softwer ta' sors miftuħ, sempliċi iżda b'saħħtu, veloċi u personalizzabbli ħafna għall-ħolqien ta' forum ta' mistoqsija u tweġiba (Q&A). Huwa ispirat minn StackOverflow u YahooAnswers, u miktub f'Python fuq il-qafas tal-web Django.

Jippermetti ġestjoni effiċjenti tal-għarfien ta’ mistoqsijiet u tweġibiet, u b’hekk organizzazzjonijiet bħall-Forums Q&A ta’ LibreOffice qed jagħmlu użu tajjeb minnha. Askbot jista 'jaħdem bħala applikazzjoni waħedha jew jista' jiġi integrat mal-apps Django eżistenti tiegħek jew pjattaformi oħra tal-web.

F'dan it-tutorja inti titgħallem kif tinstalla AskBot fuq CentOS 7. Sabiex tlesti t-tutorja, ser ikollok bżonn li jkollok installazzjoni minima ta 'server CentOS 7 b'aċċess għall-għeruq.

Pass 1: Installa Dipendenzi Meħtieġa

Nibdew billi ninstallaw id-dipendenzi meħtieġa bħal għodod ta 'żvilupp billi nużaw il-kmand li ġej f'terminal.

# yum group install 'Development Tools'

Wara dan se ninstallaw ir-repożitorju ta' Epel, jekk ma jkunx diġà ġie installat fis-sistema tiegħek.

# yum install epel-release

Fl-aħħar nett, se ninstallaw xi wħud mid-dipendenzi tal-python meħtieġa biex aktar tard iħaddmu AskBot.

# yum install python-pip python-devel python-six

Fil-każ li python-pip ma jkunx installat bil-kmand ta 'hawn fuq, tista' tinstallah billi tuża l-kmand li ġej.

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

Pass 2: Installa PostgreSQL Database

AskBot teħtieġ database fejn se taħżen id-dejta tagħha. Juża PostgreSQL, għalhekk ikollna bżonn ninstallawh u kkonfigurawh fis-sistema tagħna.

Tista 'tuża l-kmand li ġej biex tlesti l-installazzjoni.

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

Meta l-installazzjoni titlesta, inizjalizza PostgreSQL bi.

# postgresql-setup initdb

Jekk kollox imur b'mod normali, għandek tara dan li ġej:

Initializing database ... OK

Il-pass li jmiss tagħna huwa li nibdew PostgreSQL u nippermettuha tibda bil-but:

# systemctl start postgresql
# systemctl enable postgresql

Issa li s-server tad-database tagħna qiegħed jaħdem, aħna se nilloggjaw bħala utent tal-postgres biex noħolqu database għall-installazzjoni AskBot tagħna.

# su - postgres

Imbagħad uża biex:

$ psql

Issa inti l-pront PostgreSQL, lest biex toħloq id-database tagħna, l-utent tad-database u tagħti lill-utent privileġġi fuq id-database l-ġdida. Oħloq id-database billi tuża l-kmand hawn taħt, tħossok liberu li tibdel l-isem tad-database skont il-preferenzi tiegħek:

postgres=# create database askbot_db;

Sussegwentement toħloq l-utent tad-database. Ibdel \password_here b'password b'saħħitha:

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

Agħti l-privileġġi tal-utent fuq l-askbot_db:

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

Sussegwentement ikollna bżonn neditjaw il-konfigurazzjoni PostgreSQL biex nibdlu l-metodu ta 'awtentikazzjoni tagħna għal md5. Biex tagħmel dan, uża l-editur tat-test favorit tiegħek u editja l-fajl /var/lib/pgsql/data/pg_hba.conf:

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

Il-konfigurazzjonijiet għandhom jidhru bħal dan:

Sussegwentement isalva l-bidliet u erġa ibda PostgreSQL:

# systemctl restart postgresql

Pass 3: Installa AskBot Forum

Fl-aħħarnett nistgħu nipproċedu bl-installazzjoni ta 'AskBot. Ibda billi toħloq utent ġdid fis-sistema tiegħek. Aħna se nsejħulha askbot:

# useradd -m -s /bin/bash askbot

Issettja l-password għall-utent il-ġdid:

# passwd askbot

Sussegwentement ikollna bżonn inżidu l-utent mal-grupp tar-roti fis-sistema:

# usermod -a -G wheel askbot

Issa se nużaw pip biex ninstallaw il-pakkett virtualenv:

# pip install virtualenv six

Issa se nilloggjaw bħala l-utent tal-askbot u noħolqu ambjent virtwali ġdid:

# su - askbot
$ virtualenv tecmint/
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.

Il-pass li jmiss huwa li tattiva l-ambjent virtwali bil-kmand li ġej:

# source tecmint/bin/activate

Issa aħna lesti biex ninstallaw AskBot permezz tal-pip.

# pip install six askbot psycopg2

L-installazzjoni tista' tieħu ftit minuti. Ladarba tkun kompluta, nistgħu nittestjaw l-installazzjoni tagħna f'direttorju temporanju. Kun żgur li MHUX issemmi dak id-direttorju askbot.

# mkdir forum_test && cd forum_test

Sussegwentement se nibdew proġett ġdid AskBot bi:

# askbot-setup

Tiġi mistoqsi ftit mistoqsija fejn ikollok tagħżel id-direttorju tal-installazzjoni – uża \.” (mingħajr kwotazzjonijiet) biex tagħżel id-direttorju attwali. Imbagħad ikollok bżonn iddaħħal l-isem tad-database ippreparat qabel , l-utent tad-database u l-password tiegħu.

Sussegwentement se niġġeneraw il-fajls statiċi għal Django bi:

# python manage.py collectstatic

Imbagħad niġġeneraw id-database:

# python manage.py syncdb

U fl-aħħar ibda s-server bi:

# python manage.py runserver 127.0.0.1:8080

Meta tmur fil-browser tiegħek għal http://127.0.0.1:8080 - għandek tara l-interface tal-askbot.

Dak kollox! Askbot huwa softwer tal-forum ta’ mistoqsijiet u tweġibiet (Q&A) ta’ sors miftuħ, sempliċi, veloċi u personalizzabbli ħafna. Jappoġġja ġestjoni effiċjenti tal-għarfien ta' mistoqsijiet u tweġibiet. Jekk iltqajt ma' xi żbalji waqt l-installazzjoni jew għandek xi mistoqsijiet oħra relatati, uża l-formola ta' feedback hawn taħt biex tilħaqna.