Askbot - Stack overflow ýaly öz sorag-jogap forumyňyzy dörediň
“Askbot” açyk çeşme, ýönekeý, ýöne güýçli, sorag we jogap forumyny döretmek üçin ýokary we özleşdirilip bilinýän programma üpjünçiligi. StackOverflow we YahooAnswers tarapyndan ylhamlanan we Django web çarçuwasynyň üstünde Python-da ýazylan.
Bilimleri netijeli dolandyrmaga we jogap bermäge mümkinçilik berýär, şonuň üçin LibreOffice-iň sorag-jogap forumlary ýaly guramalar ondan gowy peýdalanýarlar. Askbot özbaşdak programma hökmünde işläp biler ýa-da bar bolan Django programmalary ýa-da beýleki web platformalary bilen birleşdirilip bilner.
Bu gollanmada “AskBot” -y “CentOS 7” -e nädip gurmalydygyny öwrenersiňiz. Gollanmany tamamlamak üçin kök ygtyýary bolan “CentOS 7” serweriniň minimal gurnamasy bolmaly.
1-nji ädim: Gerekli baglylyklary guruň
Terminalda aşakdaky buýrugy ulanyp, ösüş gurallary ýaly zerur baglylyklary gurmak bilen başlarys.
# yum group install 'Development Tools'
Ondan soň, ulgamyňyzda eýýäm gurulmadyk bolsa, Epel ammaryny gurarys.
# yum install epel-release
Iň soňunda, AskBot-y işletmek üçin zerur bolan pifona baglylyklaryň käbirini gurarys.
# yum install python-pip python-devel python-six
Python-pip ýokardaky buýruk bilen gurulmadyk bolsa, aşakdaky buýrugy ulanyp gurup bilersiňiz.
# curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" && python get-pip.py
2-nji ädim: PostgreSQL maglumat bazasyny guruň
AskBot maglumatlaryny saklaýan maglumat bazasyny talap edýär. PostgreSQL ulanýar, şonuň üçin ony gurnamaly we ulgamymyzda sazlamaly bolarys.
Gurmagy tamamlamak üçin aşakdaky buýrugy ulanyp bilersiňiz.
# yum -y install postgresql-server postgresql-devel postgresql-contrib
Gurmak gutaransoň, PostgreSQL bilen başlaň.
# postgresql-setup initdb
Hemme zat kadaly bolsa, aşakdakylary görmeli:
Initializing database ... OK
Indiki ädimimiz, PostgreSQL-i başlamak we ony başlamaga mümkinçilik bermek:
# systemctl start postgresql # systemctl enable postgresql
Maglumat bazamyzyň serweri işleýän we işleýänsoň, “AskBot” gurnamagymyz üçin maglumat bazasyny döretmek üçin postgres ulanyjysy hökmünde gireris.
# su - postgres
Soňra ulanyň:
$ psql
Indi siz maglumatlar bazamyzy döretmäge we täze maglumatlar bazasynda ulanyja artykmaçlyklary bermäge taýyn PostgreSQL teklip. Aşakdaky buýrugy ulanyp maglumat bazasyny dörediň, islegleriňize görä maglumat bazasynyň adyny üýtgedip bilersiňiz:
postgres=# create database askbot_db;
Ondan soň maglumat bazasynyň ulanyjysyny dörediň.\Parol_here -ni güýçli parol bilen çalyşyň:
postgres=# create user askbot_user with password 'password_here';
Askbot_db-de ulanyja artykmaçlyklary beriň:
postgres=# grant all privileges on database askbot_db to askbot_user;
Indiki tanamak usulymyzy md5-e üýtgetmek üçin PostgreSQL konfigurasiýasyny redaktirlemeli bolarys. Munuň üçin halaýan tekst redaktoryňyzy ulanyň we /var/lib/pgsql/data/pg_hba.conf faýlyny redaktirläň:
# vim /var/lib/pgsql/data/pg_hba.conf
Sazlamalar şeýle bolmaly:
Soňra üýtgeşmeleri ýazdyryň we PostgreSQL-i täzeden açyň:
# systemctl restart postgresql
3-nji ädim: AskBot forumyny guruň
Ahyrynda, AskBot-y gurnamagy dowam etdirip bileris. Ulgamyňyzda täze ulanyjy döretmekden başlaň. Biz oňa askbot diýeris:
# useradd -m -s /bin/bash askbot
Täze ulanyjy üçin parol gurmak:
# passwd askbot
Ondan soň ulanyjyny ulgamdaky tigir toparyna goşmaly bolarys:
# usermod -a -G wheel askbot
Indi virtualenv paketini gurmak üçin turbany ulanarys:
# pip install virtualenv six
Indi askbot ulanyjysy hökmünde hasaba gireris we täze wirtual gurşaw dörederis:
# su - askbot $ virtualenv tecmint/
New python executable in /home/askbot/tecmint/python Installing setuptools, pip, wheel... done.
Indiki ädim, wirtual gurşawy aşakdaky buýruk bilen işjeňleşdirmek:
# source tecmint/bin/activate
Indi “AskBot” -y turba arkaly gurmaga taýyn.
# pip install six askbot psycopg2
Gurmak birnäçe minut alyp biler. Gurlup gutarandan soň, gurnamany wagtlaýyn katalogda synap bileris. Şol katalog askbotyň adyny tutmaň.
# mkdir forum_test && cd forum_test
Geljekde täze AskBot taslamasy bilen başlarys:
# askbot-setup
Size birnäçe sorag berler, gurnama katalogyny nireden saýlamaly bolarsyňyz - \ulanyň.
(sitatasyz) häzirki katalogy saýlamak üçin. Soňra öňünden taýýarlanan maglumat bazasynyň adyny girizmeli bolarsyňyz. , maglumat bazasy ulanyjysy we paroly.
Indiki Django üçin statiki faýllary dörederis:
# python manage.py collectstatic
Indiki maglumat bazasyny döredýäris:
# python manage.py syncdb
Iň soňunda serweri başlaň:
# python manage.py runserver 127.0.0.1:8080
Brauzeriňize http://127.0.0.1:8080
gireniňizde, askbot interfeýsini görmeli.
Bu hemmesi! Askbot açyk çeşme, ýönekeý, çalt we ýokary özleşdirilip bilinýän sorag-jogap (sorag-jogap) forum programma üpjünçiligi. Netijeli soraglary we bilimleri dolandyrmagy goldaýar. Gurnama wagtynda haýsydyr bir ýalňyşlyk bilen ýüzbe-ýüz bolsaňyz ýa-da başga baglanyşykly soraglaryňyz bar bolsa, bize jogap bermek üçin aşakdaky seslenme formasyny ulanyň.