Askbot - Ustvarite svoj forum z vprašanji in odgovori kot Stack Overflow


Askbot je odprtokodna, preprosta, a zmogljiva, hitra in zelo prilagodljiva programska oprema za ustvarjanje foruma z vprašanji in odgovori. Navdihujejo ga StackOverflow in YahooAnswers in so napisani v Pythonu na vrhu spletnega okvira Django.

Omogoča učinkovito upravljanje vprašanj in odgovorov, zato ga organizacije, kot so forumi za vprašanja in odgovori LibreOffice, dobro izkoriščajo. Askbot lahko deluje kot samostojna aplikacija ali pa se lahko integrira z obstoječimi aplikacijami Django ali drugimi spletnimi platformami.

V tej vadnici se boste naučili, kako namestiti AskBot na CentOS 7. Če želite dokončati vadnico, morate imeti minimalno namestitev strežnika CentOS 7 s korenskim dostopom.

1. korak: Namestite zahtevane odvisnosti

Začeli bomo z namestitvijo potrebnih odvisnosti, kot so razvojna orodja, z uporabo naslednjega ukaza v terminalu.

# yum group install 'Development Tools'

Po tem bomo namestili skladišče Epel, če še ni nameščeno v vašem sistemu.

# yum install epel-release

Nazadnje bomo namestili nekatere odvisnosti pythona, potrebne za poznejši zagon AskBot.

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

Če python-pip ni nameščen z zgornjim ukazom, ga lahko namestite z naslednjim ukazom.

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

2. korak: Namestite zbirko podatkov PostgreSQL

AskBot potrebuje bazo podatkov, kamor bo shranil svoje podatke. Uporablja PostgreSQL, zato ga bomo morali namestiti in konfigurirati v našem sistemu.

Za dokončanje namestitve lahko uporabite naslednji ukaz.

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

Ko je namestitev končana, inicializirajte PostgreSQL z.

# postgresql-setup initdb

Če vse poteka normalno, bi morali videti naslednje:

Initializing database ... OK

Naš naslednji korak je zagon PostgreSQL in omogočanje zagona ob zagonu:

# systemctl start postgresql
# systemctl enable postgresql

Zdaj, ko je naš strežnik baz podatkov zagnan, se bomo prijavili kot uporabnik postgresa in ustvarili bazo podatkov za našo namestitev AskBot.

# su - postgres

Nato uporabite za:

$ psql

Zdaj ste poziv PostgreSQL, pripravljen za ustvarjanje naše baze podatkov, uporabnika baze podatkov in podelitev uporabniških privilegijev v novi bazi podatkov. Ustvarite bazo podatkov s spodnjim ukazom, lahko spremenite ime zbirke podatkov po vaših željah:

postgres=# create database askbot_db;

Nato ustvarite uporabnika baze podatkov. Zamenjajte\"password_here" z močnim geslom:

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

Podelite uporabniške pravice na askbot_db:

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

Nato bomo morali urediti konfiguracijo PostgreSQL, da bomo naš način preverjanja pristnosti spremenili v md5. Če želite to narediti, uporabite svoj najljubši urejevalnik besedil in uredite datoteko /var/lib/pgsql/data/pg_hba.conf:

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

Konfiguracije bi morale izgledati tako:

Nato shranite spremembe in znova zaženite PostgreSQL:

# systemctl restart postgresql

3. korak: Namestite AskBot Forum

Končno lahko nadaljujemo z namestitvijo AskBot. Začnite z ustvarjanjem novega uporabnika v sistemu. Poimenovali ga bomo askbot:

# useradd -m -s /bin/bash askbot

Geslo za nastavitev novega uporabnika:

# passwd askbot

Nato bomo morali dodati uporabnika v skupino koles v sistemu:

# usermod -a -G wheel askbot

Zdaj bomo za namestitev paketa virtualenv uporabili pip:

# pip install virtualenv six

Zdaj se bomo prijavili kot uporabnik askbot in ustvarili novo virtualno okolje:

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

Naslednji korak je aktiviranje virtualnega okolja z naslednjim ukazom:

# source tecmint/bin/activate

Zdaj smo pripravljeni namestiti AskBot prek pipa.

# pip install six askbot psycopg2

Namestitev lahko traja nekaj minut. Ko je dokončana, lahko namestitev preizkusimo v začasnem imeniku. Prepričajte se, da tega imenika ne imenujete askbot.

# mkdir forum_test && cd forum_test

Nato bomo inicializirali nov projekt AskBot z:

# askbot-setup

Postavljeno vam bo nekaj vprašanj, pri katerih boste morali izbrati namestitveni imenik - z uporabo \"." (brez narekovajev) izberite trenutni imenik. Nato morate vnesti prej pripravljeno ime zbirke podatkov. , uporabnik baze podatkov in njeno geslo.

Nato bomo ustvarili statične datoteke za Django z:

# python manage.py collectstatic

Nato ustvarimo bazo podatkov:

# python manage.py syncdb

In končno zaženite strežnik z:

# python manage.py runserver 127.0.0.1:8080

Ko greste v brskalnik na http://127.0.0.1:8080 - bi morali videti vmesnik askbot.

To je vse! Askbot je odprtokodna, preprosta, hitra in zelo prilagodljiva programska oprema za vprašanja in odgovore (Vprašanja in odgovori). Podpira učinkovito upravljanje znanja in vprašanj. Če ste med namestitvijo naleteli na napake ali imate kakršna koli druga povezana vprašanja, nas kontaktirajte s spodnjim obrazcem za povratne informacije.