在下一篇文章中,我们将看看 Askbot。 这是 一个开源软件,用于创建面向问答的互联网论坛. 该网站于 2009 年 XNUMX 月启动,最初类似于 Stack Overflow 或 Yahoo! 答案。 它主要由开发和维护 叶夫根尼·法耶夫.
Askbot 是 一个基于 Python 和 Django 的开源问答(Q&A)平台. 使用 Askbot,任何用户都可以创建自己的问答平台。 在以下几行中,我们将看到如何在 Ubuntu 20.04 或 18.04 上安装 Askbot。
有了这个软件,任何用户都可以 创建高效的问答知识论坛,其中将首先显示最佳答案,按标签分类。 它还包括一个带有奖励系统的用户控件,它为用户发布好的和相关信息提供业力。
如何在 Ubuntu 20.04 上安装 Askbot?
安装先决条件
要安装 Askbot,首先我们必须 在我们的系统中安装一些必要的包以进行正确的操作. 我们只需要打开一个终端(Ctrl + Alt + T)并执行命令:
sudo apt update; sudo apt install python-dev python-setuptools python3-pip python3-psycopg2 libpq-dev
安装 PostgreSQL
现在我们已经安装了以前的软件包,让我们 安装 PostgreSQL的. 为此,在终端 (Ctrl + Alt + T) 中,要执行的命令如下:
sudo apt install postgresql postgresql-client
安装PostgreSQL后,可以使用以下命令 开始并检查您的状态:
sudo systemctl start postgresql.service sudo systemctl status postgresql.service
创建 PostgreSQL 用户密码
安装PostgreSQL后,这是一个好主意 创建或更改默认 Postgres 用户密码. 为此,我们只需要在 bash shell 中运行以下命令:
sudo passwd postgres
上面的命令应该要求我们为 postgres 用户创建一个新密码。 设置新密码后, 每次我们要访问 PostgreSQL 交互式 shell 时,都会要求我们输入刚刚输入的密码.
创建 PostgreSQL 数据库
现在安装了 PostgreSQL,我们将不得不使用以下命令来 将我们连接到您的 shell 控制台. 这将要求我们写上我们在上一步中写的密码:
su - postgres psql
在 shell 控制台中,我们将键入以下内容 创建一个名为的新数据库 Askbot:
create database askbot;
在这一点上,我们需要做的下一件事是 创建一个名为的数据库用户 询问机器人用户 使用新密码。 我们将通过编写以下代码来实现:
create user askbotusuario with password 'tu-contraseña';
接下来,我们将不得不 授予 询问机器人用户 完全访问数据库 Askbot. 然后我们只需要退出shell:
grant all privileges on database askbot to askbotusuario;
\q exit
创建上述数据库和用户后,让我们 编辑 PostgreSQL 配置文件并启用 md5 身份验证. 我们可以用我们最喜欢的编辑器做到这一点。
sudo vim /etc/postgresql/12/main/pg_hba.conf
在文件的末尾,我们将编辑以下屏幕截图中突出显示的行 屏幕参考md5。
编辑完上述文件后,我们保存并退出。 现在我们将不得不 重启 PostgreSQL 使用命令:
sudo systemctl restart postgresql
安装询问机器人
要安装 Askbot, 我们需要创建一个专用的用户帐户. 我们可以通过执行以下命令来创建一个名为的新帐户来实现这一点 Askbot:
sudo useradd -m -s /bin/bash askbot sudo passwd askbot
然后我们会 确保用户可以以 root 身份运行 sudo:
sudo usermod -a -G sudo askbot
完成后,我们将在终端中执行另一个命令以 安装 Python 虚拟环境(virtualenv):
sudo pip install virtualenv six
在安装结束时,我们将 切换到账户 Askbot:
su - askbot
我们继续 创建一个新的虚拟环境 Askbot:
virtualenv askbot
下一步将 切换到虚拟环境并激活它:
cd askbot source bin/activate
然后 我们将安装 Askbot、Six 和 PostgreSQL 模块:
pip install --upgrade pip pip install six==1.10.0 pip install askbot==0.11.1 psycopg2
安装后我们将 为 askbot 创建一个名为 miapp 的目录并配置它:
mkdir miapp cd miapp askbot-setup
配置命令 将请求环境的详细信息,正如您在以下屏幕截图中看到的:
然后 我们将完成配置 跑步 命令:
cd askbot_site/ python manage.py collectstatic python manage.py migrate
启动应用
现在 启动应用服务器, 在终端 (Ctrl + Alt + T) 中,我们将使用命令:
python manage.py runserver --insecure 0.0.0.0:8080
在这一点上 我们应该能够通过 url 访问我们的应用程序:
http://localhost:8080
我们也可以 使用以下网址以管理员身份登录后端. 虽然我们将不得不使用管理员凭据:
http://localhost:8080/admin
如果您无法以管理员身份登录后端,可以通过在终端中运行命令(Ctrl + Alt + T)创建一个超级管理员帐户:
python manage.py createsuperuser
之后,我们可以 使用新创建的凭据进入后台管理:
对于希望创建问答论坛的个人和企业,Askbot 可能会有所帮助。 有关该项目的更多信息,用户可以咨询 官方网站 或在你的 GitHub上的存储库.