Поиск по сайту:

Askbot — создайте свой собственный форум вопросов и ответов, например Stack Overflow


Askbot — это простое, но мощное, быстрое и легко настраиваемое программное обеспечение с открытым исходным кодом для создания форума вопросов и ответов. Он создан на основе StackOverflow и YahooAnswers и написан на Python поверх веб-фреймворка Django.

Он позволяет эффективно управлять знаниями вопросов и ответов, поэтому такие организации, как форумы вопросов и ответов Fedora и форумы вопросов и ответов LibreOffice, эффективно используют его. Askbot может работать как отдельное приложение или может быть интегрирован с существующими приложениями Django или другими веб-платформами.

Из этого руководства вы узнаете, как установить AskBot на CentOS 7. Для завершения руководства вам потребуется минимальная установка сервера CentOS 7 с root-доступом.

Шаг 1. Установите необходимые зависимости

Мы начнем с установки необходимых зависимостей, таких как инструменты разработки, используя следующую команду в терминале.

yum group install 'Development Tools'

После этого мы установим репозиторий Epel, если он еще не установлен в вашей системе.

yum install epel-release

Наконец, мы установим некоторые зависимости Python, необходимые для последующего запуска AskBot.

yum install python-pip python-devel python-six

Если python-pip не установлен с помощью указанной выше команды, вы можете установить его с помощью следующей команды.

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

Шаг 2. Установите базу данных PostgreSQL

AskBot требуется база данных, в которой он будет хранить свои данные. Он использует PostgreSQL, поэтому нам нужно будет установить его и настроить в нашей системе.

Вы можете использовать следующую команду для завершения установки.

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

После завершения установки инициализируйте PostgreSQL с помощью.

postgresql-setup initdb

Если все идет нормально, вы должны увидеть следующее:

Initializing database ... OK

Наш следующий шаг — запустить PostgreSQL и разрешить его запуск при загрузке:

systemctl start postgresql
systemctl enable postgresql

Теперь, когда наш сервер базы данных запущен и работает, мы войдем в систему как пользователь postgres, чтобы создать базу данных для нашей установки AskBot.

su - postgres

Затем используйте, чтобы:

psql

Теперь вы получили приглашение PostgreSQL и готовы создать нашу базу данных, пользователя базы данных и предоставить ему права доступа к новой базе данных. Создайте базу данных, используя команду ниже. Не стесняйтесь менять имя базы данных по своему усмотрению:

postgres=# create database askbot_db;

Затем создайте пользователя базы данных. Замените password_here на надежный пароль:

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

Предоставьте пользователю права доступа к askbot_db:

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

Далее нам нужно будет отредактировать конфигурацию PostgreSQL, чтобы изменить метод аутентификации на md5. Для этого используйте свой любимый текстовый редактор и отредактируйте файл /var/lib/pgsql/data/pg_hba.conf:

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

Конфигурации должны выглядеть следующим образом:

Далее сохраните изменения и перезапустите PostgreSQL:

systemctl restart postgresql

Шаг 3. Установите форум AskBot

Наконец, мы можем приступить к установке AskBot. Начните с создания нового пользователя в вашей системе. Мы назовем его askbot:

useradd -m -s /bin/bash askbot

Установить пароль для нового пользователя:

passwd askbot

Далее нам нужно будет добавить пользователя в группу колес в системе:

usermod -a -G wheel askbot

Теперь мы будем использовать pip для установки пакета virtualenv:

pip install virtualenv six

Теперь мы войдем в систему как пользователь askbot и создадим новую виртуальную среду:

su - askbot
virtualenv tecmint/
Пример вывода
New python executable in /home/askbot/tecmint/python
Installing setuptools, pip, wheel...
done.

Следующим шагом будет активация виртуальной среды с помощью следующей команды:

source tecmint/bin/activate

Теперь мы готовы установить AskBot через pip.

pip install six askbot psycopg2

Установка может занять пару минут. После завершения мы сможем протестировать нашу установку во временном каталоге. НЕ называйте этот каталог askbot.

mkdir forum_test && cd forum_test

Далее мы инициализируем новый проект AskBot с помощью:

askbot-setup

Вам будет задано несколько вопросов, где вам нужно будет выбрать каталог установки — используйте ». ” (без кавычек), чтобы выбрать текущий каталог. Далее вам нужно будет ввести ранее подготовленное имя базы данных, пользователя базы данных и ее пароль.

Далее мы сгенерируем статические файлы для Django с помощью:

python manage.py collectstatic

Далее генерируем базу данных:

python manage.py syncdb

И, наконец, запустите сервер с помощью:

python manage.py runserver 127.0.0.1:8080

Когда вы зайдете в браузере на http://127.0.0.1:8080 — вы должны увидеть интерфейс Askbot.

Вот и все! Askbot — это простое, быстрое и легко настраиваемое программное обеспечение для вопросов и ответов с открытым исходным кодом. Он поддерживает эффективное управление знаниями вопросов и ответов. Если во время установки вы столкнулись с какими-либо ошибками или у вас возникли другие вопросы, воспользуйтесь формой обратной связи ниже, чтобы связаться с нами.