No próximo artigo, daremos uma olhada no Askbot. Este é um software de código aberto usado para criar fóruns de perguntas e respostas na Internet. O site começou em julho de 2009 e era inicialmente semelhante ao Stack Overflow ou Yahoo! Respostas. É principalmente desenvolvido e mantido por Yevgeny Fadeev.
Askbot é uma plataforma de perguntas e respostas (Q&A) de código aberto baseada em Python e Django. Com o Askbot, qualquer usuário pode criar sua própria plataforma de perguntas e respostas. Nas linhas a seguir, veremos como o Askbot pode ser instalado no Ubuntu 20.04 ou 18.04.
Graças a este software, qualquer usuário pode criar um fórum de conhecimento eficiente de perguntas e respostas, em que as melhores respostas serão exibidas primeiro, categorizadas por tags. Também inclui um controle de usuário com sistemas de recompensa, que dão aos usuários carma por postar informações boas e relevantes.
Como instalar o Askbot no Ubuntu 20.04?
Pré-requisitos de instalação
Para instalar o Askbot, em primeiro lugar, devemos instale em nosso sistema alguns pacotes necessários para um correto funcionamento. Só precisaremos abrir um terminal (Ctrl + Alt + T) e executar os comandos:
sudo apt update; sudo apt install python-dev python-setuptools python3-pip python3-psycopg2 libpq-dev
Instale PostgreSQL
Agora que temos os pacotes anteriores instalados, vamos instalar PostgreSQL. Para fazer isso, em um terminal (Ctrl + Alt + T) o comando a ser executado será o seguinte:
sudo apt install postgresql postgresql-client
Depois de instalar o PostgreSQL, os seguintes comandos podem ser usados para comece e verifique seu status:
sudo systemctl start postgresql.service sudo systemctl status postgresql.service
Criar senha de usuário PostgreSQL
Depois de instalar o PostgreSQL, é uma boa ideia criar ou alterar a senha de usuário Postgres padrão. Para fazer isso, simplesmente precisamos executar o seguinte comando no shell bash:
sudo passwd postgres
O comando acima deve nos pedir para criar uma nova senha para o usuário postgres. Depois de definir uma nova senha, toda vez que quisermos acessar o shell interativo do PostgreSQL, seremos solicitados a inserir a senha que acabamos de inserir.
Crie o banco de dados PostgreSQL
Agora que o PostgreSQL está instalado, teremos que usar os seguintes comandos para conecte-nos ao seu console shell. Isso nos pedirá para escrever a senha que escrevemos na etapa anterior:
su - postgres psql
No console do shell, vamos digitar o seguinte para crie um novo banco de dados chamado Askbot:
create database askbot;
Neste ponto, a próxima coisa que precisamos fazer é criar um usuário de banco de dados chamado askbotuser com uma nova senha. Faremos isso escrevendo:
create user askbotusuario with password 'tu-contraseña';
Em seguida, teremos que Conceder a askbotuser acesso total ao banco de dados de Askbot. Então, só temos que sair do shell:
grant all privileges on database askbot to askbotusuario;
\q exit
Depois de criar o banco de dados e o usuário acima, vamos editar o arquivo de configuração PostgreSQL e habilitar a autenticação md5. Podemos fazer isso com nosso editor favorito.
sudo vim /etc/postgresql/12/main/pg_hba.conf
Dentro do arquivo, ao final dele, vamos editar as linhas destacadas na imagem a seguir tela para se referir ao MD5.
Depois de editar o arquivo anterior, nós o salvamos e saímos. Agora teremos que reinicie o PostgreSQL com o comando:
sudo systemctl restart postgresql
Instale o Askbot
Para instalar o Askbot, precisaremos criar uma conta de usuário dedicada. Podemos conseguir isso executando os seguintes comandos para criar uma nova conta chamada Askbot:
sudo useradd -m -s /bin/bash askbot sudo passwd askbot
Então nós vamos certifique-se de que o usuário pode executar sudo como root:
sudo usermod -a -G sudo askbot
Quando terminarmos, vamos executar este outro comando no terminal para instalar ambiente virtual Python (virtualenv):
sudo pip install virtualenv six
No final da instalação, iremos mudar para a conta de Askbot:
su - askbot
Nós continuamos criando um novo ambiente virtual para Askbot:
virtualenv askbot
O próximo passo será mude para o ambiente virtual e ative-o:
cd askbot source bin/activate
Depois vamos instalar os módulos Askbot, Six e PostgreSQL:
pip install --upgrade pip pip install six==1.10.0 pip install askbot==0.11.1 psycopg2
Após a instalação iremos crie um diretório chamado miapp para askbot e configure-o:
mkdir miapp cd miapp askbot-setup
O comando de configuração irá solicitar os detalhes do ambiente, como você pode ver na seguinte captura de tela:
Depois vamos completar a configuração corrida os comandos:
cd askbot_site/ python manage.py collectstatic python manage.py migrate
Abra o aplicativo
Para agora inicie o servidor de aplicação, no terminal (Ctrl + Alt + T) usaremos o comando:
python manage.py runserver --insecure 0.0.0.0:8080
Neste ponto devemos ser capazes de acessar nosso aplicativo via url:
http://localhost:8080
Também podemos faça login no back-end como administrador com o seguinte url. Embora tenhamos que usar as credenciais de administrador:
http://localhost:8080/admin
Se você não conseguir fazer login no back-end como administrador, pode criar uma conta de superadministrador executando o comando no terminal (Ctrl + Alt + T):
python manage.py createsuperuser
Depois disso nós podemos use as credenciais recém-criadas para entrar no back-end do administrador:
Para indivíduos e empresas que desejam criar um fórum de perguntas e respostas, o Askbot pode ser útil. Para obter mais informações sobre este projeto, os usuários podem consultar o site oficial ou repositório no GitHub.