Askbot – vytvořte si vlastní fórum otázek a odpovědí jako Stack Overflow
Askbot je open source, jednoduchý, ale výkonný, rychlý a vysoce přizpůsobitelný software pro vytváření fóra otázek a odpovědí (Q&A). Je inspirován StackOverflow a YahooAnswers a napsán v Pythonu nad webovým rámcem Django.
Umožňuje efektivní správu znalostí o otázkách a odpovědích, takže organizace, jako jsou fóra otázek a odpovědí Fedory a fóra otázek a odpovědí LibreOffice, toho dobře využívají. Askbot může fungovat jako samostatná aplikace nebo může být integrován s vašimi stávajícími aplikacemi Django nebo jinými webovými platformami.
V tomto tutoriálu se dozvíte, jak nainstalovat AskBot na CentOS 7. Chcete-li dokončit tutoriál, budete potřebovat minimální instalaci serveru CentOS 7 s přístupem root.
Krok 1: Nainstalujte požadované závislosti
Začneme instalací požadovaných závislostí, jako jsou nástroje pro vývoj, pomocí následujícího příkazu v terminálu.
yum group install 'Development Tools'
Poté nainstalujeme úložiště Epel, pokud již ve vašem systému není nainstalováno.
yum install epel-release
Nakonec nainstalujeme některé závislosti na pythonu potřebné k pozdějšímu spuštění AskBot.
yum install python-pip python-devel python-six
V případě, že python-pip není nainstalován pomocí výše uvedeného příkazu, můžete jej nainstalovat pomocí následujícího příkazu.
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" && python get-pip.py
Krok 2: Nainstalujte databázi PostgreSQL
AskBot vyžaduje databázi, kam bude ukládat svá data. Používá PostgreSQL, takže jej budeme muset nainstalovat a nakonfigurovat v našem systému.
K dokončení instalace můžete použít následující příkaz.
yum -y install postgresql-server postgresql-devel postgresql-contrib
Po dokončení instalace inicializujte PostgreSQL pomocí.
postgresql-setup initdb
Pokud vše proběhne normálně, měli byste vidět následující:
Initializing database ... OK
Naším dalším krokem je spuštění PostgreSQL a povolení jeho spuštění při startu:
systemctl start postgresql
systemctl enable postgresql
Nyní, když je náš databázový server v provozu, přihlásíme se jako uživatel postgres a vytvoříme databázi pro naši instalaci AskBot.
su - postgres
Poté použijte:
psql
Nyní jste výzvou PostgreSQL, připraveni vytvořit naši databázi, uživatele databáze a udělit uživatelská oprávnění k nové databázi. Vytvořte databázi pomocí příkazu níže, můžete změnit název databáze podle svých preferencí:
postgres=# create database askbot_db;
Dále vytvořte uživatele databáze. Nahraďte „password_here“ silným heslem:
postgres=# create user askbot_user with password 'password_here';
Udělte uživatelská oprávnění na askbot_db:
postgres=# grant all privileges on database askbot_db to askbot_user;
Dále budeme muset upravit konfiguraci PostgreSQL, abychom změnili naši autentizační metodu na md5. Chcete-li to provést, použijte svůj oblíbený textový editor a upravte soubor /var/lib/pgsql/data/pg_hba.conf:
vim /var/lib/pgsql/data/pg_hba.conf
Konfigurace by měla vypadat takto:
Dále uložte změny a restartujte PostgreSQL:
systemctl restart postgresql
Krok 3: Nainstalujte fórum AskBot
Nakonec můžeme pokračovat v instalaci AskBot. Začněte vytvořením nového uživatele ve vašem systému. Budeme tomu říkat askbot:
useradd -m -s /bin/bash askbot
Nastavení hesla pro nového uživatele:
passwd askbot
Dále budeme muset přidat uživatele do skupiny kol v systému:
usermod -a -G wheel askbot
Nyní použijeme pip k instalaci balíčku virtualenv:
pip install virtualenv six
Nyní se přihlásíme jako uživatel askbot a vytvoříme nové virtuální prostředí:
su - askbot
virtualenv tecmint/
Ukázkový výstup
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.
Dalším krokem je aktivace virtuálního prostředí pomocí následujícího příkazu:
source tecmint/bin/activate
Nyní jsme připraveni nainstalovat AskBot přes pip.
pip install six askbot psycopg2
Instalace může trvat několik minut. Jakmile bude dokončena, můžeme otestovat naši instalaci v dočasném adresáři. Ujistěte se, že tento adresář NEJDETE pojmenovat askbot.
mkdir forum_test && cd forum_test
Dále inicializujeme nový projekt AskBot s:
askbot-setup
Budete dotázáni na několik otázek, kde budete muset vybrat instalační adresář – použijte
Dále vygenerujeme statické soubory pro Django s:
python manage.py collectstatic
Dále vygenerujeme databázi:
python manage.py syncdb
A nakonec spusťte server s:
python manage.py runserver 127.0.0.1:8080
Když ve svém prohlížeči přejdete na http://127.0.0.1:8080
– měli byste vidět rozhraní askbotu.
To je vše! Askbot je open source, jednoduchý, rychlý a vysoce přizpůsobitelný software fóra pro otázky a odpovědi (Q&A). Podporuje efektivní správu znalostí o otázkách a odpovědích. Pokud jste během instalace narazili na nějaké chyby nebo máte jakékoli jiné související dotazy, kontaktujte nás pomocí níže uvedeného formuláře zpětné vazby.