„Askbot“ – sukurkite savo klausimų ir atsakymų forumą kaip „Stack Overflow“.


Askbot yra atvirojo kodo, paprasta, bet galinga, greita ir lengvai pritaikoma programinė įranga, skirta klausimų ir atsakymų (Kl. ir atsakymų) forumui kurti. Ją įkvėpė StackOverflow ir YahooAnswers, jis parašytas Python, esantis ant Django žiniatinklio sistemos.

Tai leidžia efektyviai valdyti klausimų ir atsakymų žinias, todėl tokios organizacijos kaip „Fedora“ klausimų ir atsakymų forumai ir „LibreOffice“ klausimų ir atsakymų forumai tuo tinkamai naudojasi. „Askbot“ gali veikti kaip atskira programa arba gali būti integruota su esamomis „Django“ programėlėmis ar kitomis žiniatinklio platformomis.

Šioje mokymo programoje sužinosite, kaip įdiegti AskBot CentOS 7. Norėdami užbaigti mokymo programą, turėsite minimaliai įdiegti CentOS 7 serverį su root prieiga.

1 veiksmas: įdiekite reikiamas priklausomybes

Pradėsime diegdami reikiamas priklausomybes, pvz., kūrimo įrankius, naudodami šią komandą terminale.

yum group install 'Development Tools'

Po to įdiegsime Epel saugyklą, jei ji dar nebuvo įdiegta jūsų sistemoje.

yum install epel-release

Galiausiai įdiegsime kai kurias „python“ priklausomybes, kurių reikia norint vėliau paleisti AskBot.

yum install python-pip python-devel python-six

Jei python-pip nėra įdiegtas naudojant aukščiau pateiktą komandą, galite ją įdiegti naudodami šią komandą.

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

2 veiksmas: įdiekite PostgreSQL duomenų bazę

AskBot reikalinga duomenų bazė, kurioje bus saugomi duomenys. Ji naudoja PostgreSQL, todėl turėsime ją įdiegti ir sukonfigūruoti savo sistemoje.

Norėdami užbaigti diegimą, galite naudoti šią komandą.

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

Kai diegimas bus baigtas, inicijuokite PostgreSQL su.

postgresql-setup initdb

Jei viskas vyksta normaliai, turėtumėte pamatyti šiuos dalykus:

Initializing database ... OK

Kitas žingsnis yra paleisti PostgreSQL ir įgalinti jį paleisti įkrovos metu:

systemctl start postgresql
systemctl enable postgresql

Dabar, kai mūsų duomenų bazės serveris yra sukurtas ir veikia, prisijungsime kaip postgres naudotojas, kad sukurtume duomenų bazę mūsų AskBot diegimui.

su - postgres

Tada naudokite:

psql

Dabar esate PostgreSQL raginimas, pasiruošęs sukurti mūsų duomenų bazę, duomenų bazės vartotoją ir suteikti naudotojui privilegijas naujoje duomenų bazėje. Sukurkite duomenų bazę naudodami toliau pateiktą komandą, nedvejodami pakeiskite duomenų bazės pavadinimą pagal savo pageidavimus:

postgres=# create database askbot_db;

Tada sukurkite duomenų bazės vartotoją. Pakeiskite “password_here” stipriu slaptažodžiu:

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

Suteikite naudotojo teises askbot_db:

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

Tada turėsime redaguoti „PostgreSQL“ konfigūraciją, kad pakeistume autentifikavimo metodą į md5. Norėdami tai padaryti, naudokite mėgstamą teksto rengyklę ir redaguokite /var/lib/pgsql/data/pg_hba.conf failą:

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

Konfigūracijos turėtų atrodyti taip:

Tada išsaugokite pakeitimus ir iš naujo paleiskite PostgreSQL:

systemctl restart postgresql

3 veiksmas: įdiekite „AskBot Forum“.

Galiausiai galime tęsti AskBot diegimą. Pradėkite sukurdami naują vartotoją savo sistemoje. Vadinsime jį askbot:

useradd -m -s /bin/bash askbot

Naujo vartotojo slaptažodžio nustatymas:

passwd askbot

Tada turėsime pridėti vartotoją prie ratų grupės sistemoje:

usermod -a -G wheel askbot

Dabar naudosime pip, kad įdiegtume virtualenv paketą:

pip install virtualenv six

Dabar prisijungsime kaip askbot naudotojas ir sukursime naują virtualią aplinką:

su - askbot
virtualenv tecmint/
Pavyzdžio išvestis
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.

Kitas žingsnis yra suaktyvinti virtualią aplinką šia komanda:

source tecmint/bin/activate

Dabar esame pasirengę įdiegti AskBot per pip.

pip install six askbot psycopg2

Diegimas gali užtrukti keletą minučių. Kai tai bus baigta, galime išbandyti savo diegimą laikinajame kataloge. Įsitikinkite, kad NEpavadinote to katalogo askbot.

mkdir forum_test && cd forum_test

Tada inicijuosime naują AskBot projektą su:

askbot-setup

Jums bus užduoti keli klausimai, kur turėsite pasirinkti diegimo katalogą – naudokite “. ” (be kabučių), kad pasirinktumėte dabartinį katalogą. Toliau reikės įvesti anksčiau paruoštą duomenų bazės pavadinimą, duomenų bazės vartotoją ir jo slaptažodį.

Tada sugeneruosime statinius Django failus su:

python manage.py collectstatic

Toliau generuojame duomenų bazę:

python manage.py syncdb

Ir galiausiai paleiskite serverį su:

python manage.py runserver 127.0.0.1:8080

Kai einate į savo naršyklę adresu http://127.0.0.1:8080 – turėtumėte pamatyti askbot sąsają.

Tai viskas! Askbot yra atvirojo kodo, paprasta, greita ir lengvai pritaikoma klausimų ir atsakymų forumo programinė įranga. Tai palaiko efektyvų klausimų ir atsakymų žinių valdymą. Jei diegdami susidūrėte su klaidomis arba turite kitų susijusių užklausų, naudokite toliau pateiktą atsiliepimų formą, kad su mumis susisiektumėte.