Este guia é apenas para a configuração do ambiente de desenvolvimento do Discourse. Se você precisar instalar o Discourse em um ambiente de produção, consulte o conteúdo em: Install Discourse in production with the official supported instructions.
Para o texto original em inglês sobre a configuração do ambiente de desenvolvimento, consulte: Set up a local Discourse Development Environment?.
Este artigo é apenas para configuração de desenvolvimento no ambiente Ubuntu, pois o Discourse é desenvolvido em Ruby e o ambiente de desenvolvimento Ruby é mais fácil de configurar no Ubuntu. Portanto, o ambiente de execução de produção do Discourse também é recomendado oficialmente para ser executado no Ubuntu. Embora nossa comunidade seja executada em um ambiente REHL sem problemas devido ao uso de contêineres Docker, se você deseja desenvolver o Discourse, é recomendável usar um ambiente Ubuntu.
Se você estiver usando o sistema Windows, precisará instalar o ambiente WSL. WSL é um ambiente baseado em Ubuntu fornecido pelo Windows, usado principalmente para resolver problemas de desenvolvimento de aplicativos Linux no Windows.
Este artigo pressupõe que você ainda não instalou o ambiente Ruby/Rails/Postgres/Redis no ambiente Ubuntu. Vamos começar a configurar o ambiente de desenvolvimento!
Embora este guia de desenvolvimento presuma que você está usando um ambiente de desenvolvimento Ubuntu, qualquer sistema Linux baseado em Debian pode ser usado.
Este guia de desenvolvimento foi verificado no Ubuntu 18 e não requer nenhuma etapa adicional para configurar o ambiente de desenvolvimento.
Devido a diferenças no uso do ambiente de desenvolvimento Ubuntu/Debian, você pode precisar consultar as seguintes informações ao desenvolver no Ubuntu/Debian:
Instalação do ambiente de teste do Discourse no Ubuntu 20.04 e versões posteriores
No Ubuntu 20.04 e versões posteriores, o OpenSSL 3.0.2 será instalado por padrão. Pode ser necessário compilar a partir de uma versão anterior do OpenSSL e substituir a versão acima (a versão recomendada oficialmente é OpenSSL-1.1.1n). Você também precisa verificar a versão do Ruby instalada. Você pode usar o comando ruby --version para verificar a versão do Ruby. O Discourse ainda usa a versão Ruby 2. Se você estiver usando Ruby 3.x ou uma versão posterior, precisará rebaixar sua versão do Ruby. É recomendado usar uma ferramenta de controle de versão do Ruby para rebaixar a versão. Para o ambiente de execução atual do Discourse, a versão Ruby 2.7.6 é considerada a mais adequada para a execução do Discourse. Consulte: Notes about Installing Discourse on Ubuntu 20.04 - #2 by SaraDev para mais informações.
Instalação do ambiente de teste do Discourse em versões do Ubuntu anteriores a 20.04
A seção a seguir foi adicionada por @pfaffman em 22.05.16. Isso pode causar um erro, mas você pode não encontrá-lo.
NOTA: Consulte: Failed to build ruby 2.7.5 on ubuntu 22.04 · rbenv/ruby-build · Discussion #1940 · GitHub para obter informações relevantes.
Fim das adições de @pfaffman.
Com base em nossa experiência de teste, a versão Ubuntu 22 pode ter problemas de compilação e pacotes ausentes. Só concluímos a configuração do ambiente de desenvolvimento local no 20.04.
Instalar Dependências do Discourse
Como usuário geral, você pode executar o seguinte comando no console: este script. O comando acima ajudará você a configurar rapidamente o Rails em seu ambiente de desenvolvimento local.
O comando executado é:
bash <(wget -qO- https://raw.githubusercontent.com/discourse/install-rails/master/linux)
O comando acima instalará os seguintes pacotes em seu sistema local:
- Git
- rbenv
- ruby-build
- Ruby (estável)
- Rails
- PostgreSQL
- SQLite
- Redis
- Bundler
- MailHog
- ImageMagick
Se você já tem algum software instalado em seu sistema operacional local ou não deseja instalar todo o software, consulte o conteúdo em script e selecione o software que você não deseja instalar no momento. O script de instalação acima instalará todo o software necessário para a execução do Discourse, e esses softwares fornecerão suporte para a execução do Discourse.
Após concluir a instalação de todas as dependências do Discourse, podemos instalar o Discourse.
A imagem acima mostra a interface de instalação no Ubuntu. O processo de instalação de todo o software é bastante demorado, podendo levar mais de 5 minutos, dependendo do seu sistema.
Clonar Discourse
Clone o Discourse na pasta ~/discourse
git clone GitHub - discourse/discourse: A platform for community discussion. Free, open, simple. ~/discourse
~ define a pasta Home atual, o que significa que o programa Discourse será copiado para sua pasta home.
Como estamos usando o subsistema WSL, na verdade clonamos os arquivos em meu drive D.
Configurar Database
Crie um usuário com o mesmo nome do seu usuário do sistema Ubuntu:
sudo -u postgres createuser -s “$USER”
Se você receber um erro ao executar o comando acima:
createuser: error: could not connect to database template1: could not connect to server: No such file or directory
Consulte o conteúdo em: iSharkFly - 飞鲨.
Iniciar Discourse
Mude para o diretório clonado do Discourse:
cd ~/discourse
Instale os gems necessários
source ~/.bashrc
bundle install
Instale também as dependências JS necessárias
yarn install
Até este ponto, você instalou todos os gems e dependências necessários. Tente executar os seguintes comandos:
bundle exec rake db:create
bundle exec rake db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate
Se ocorrer um erro durante a execução, consulte: iSharkFly - 飞鲨.
Tente executar o seguinte comando:
bundle exec rake autospec
Seu projeto deve passar em todos os testes.
Este teste é muito demorado e pode ser pulado, caso contrário, pode levar horas.
Execute o seguinte comando para iniciar o servidor:
bundle exec rails server
Após concluir as etapas de instalação acima, você deverá conseguir acessar seu Discourse instalado localmente através de http://localhost:3000.
A partir do Discourse 2.5+, o EmberCLI é uma opção obrigatória para o ambiente de desenvolvimento local.:
Se você acessar a porta 3000 diretamente pela interface, verá a seguinte tela de prompt:
No terminal do seu console, entre na pasta (
cd ~/discourse) e execute:
bin/ember-cli
Você deverá conseguir visualizar sua instalação local do Discourse acessando o endereço http://localhost:4200.
É importante notar que esses 2 servidores precisam ser iniciados simultaneamente. O ember-cli acessa o 3000 por meio de um proxy reverso.
Criar uma nova conta de Admin
Antes de fazer login no ambiente de desenvolvimento, você precisa criar uma conta de administrador. Execute o seguinte comando para criá-la:
RAILS_ENV=development bundle exec rake admin:create
Siga as instruções na linha de comando para criar esta conta de administrador.
As informações a serem inseridas são o endereço de e-mail e a senha.
Configurar E-mail
Execute o MailHog:
mailhog
Após concluir todas as etapas acima, seu ambiente de desenvolvimento local do Discourse estará configurado. Agora você pode fazer login no Discourse como uma conta de administrador.
Se você deseja desenvolver plugins para o Discourse, consulte: Developing Discourse Plugins - Part 1 - Create a basic plugin para obter o guia.


