Problemas com Discourse 3.5.0.beta2-dev - SMTP e trabalhos em segundo plano

Estou continuando a ter dificuldades em instalar o Discourse. Aqui está outro relatório compilado pelo ChatGPT. Acredito que ele representa com precisão a minha experiência.

Relatório: Problemas com a Instalação do Discourse e Serviço Sidekiq Ausente

Contexto:
Tentamos uma instalação limpa do Discourse em uma instância Vultr, com a intenção de configurar uma implantação estável e funcional. No entanto, encontramos problemas significativos, particularmente com serviços ausentes como o Sidekiq, que impediram a entrega de e-mails e o processamento de tarefas em segundo plano.


Resumo dos Problemas Encontrados

  1. Versão Inesperada Instalada
  • Em vez da versão esperada v3.4.0.beta4-dev, a instalação padrão foi para tests-passed, puxando uma versão potencialmente instável.
  • O arquivo VERSION estava ausente, tornando incerto qual versão exata foi instalada.
  1. Serviço Sidekiq Ausente
  • O diretório /etc/service/sidekiq estava ausente dentro do contêiner do Discourse.
  • Isso impediu a execução de todas as tarefas em segundo plano (e-mails, notificações, tarefas agendadas).
  1. Problemas no Repositório Git do Discourse
  • Executar git rev-parse --abbrev-ref HEAD dentro do contêiner retornou tests-passed, confirmando que uma versão não intencional foi instalada.
  • O Git lançou um erro de “propriedade duvidosa detectada”, exigindo intervenção manual (git config --global --add safe.directory /var/www/discourse).
  1. Potenciais Problemas de Dependência
  • Mesmo que uma versão mais antiga do Discourse seja verificada, há a preocupação de que dependências mais recentes (Ruby, Redis, Sidekiq) possam ser puxadas durante a instalação, potencialmente causando problemas de compatibilidade.
  • Se as dependências do Discourse não forem fixadas corretamente, a instalação pode se comportar de forma inconsistente entre os ambientes.
  1. Limitação de Taxa do Certificado SSL
  • Uma tentativa de obter um novo certificado SSL Let’s Encrypt falhou devido à excedência do limite de taxa.
  • Isso fez com que o Nginx falhasse ao iniciar, pois não conseguia carregar o arquivo de certificado esperado.

Próximos Passos Planejados

  1. Realizar uma Limpeza Completa e Reinstalação
  • Remover /var/discourse completamente e clonar o repositório novamente.
  • Verificar manualmente uma versão estável (por exemplo, v3.4.1) antes de executar a instalação.
  • Usar ./discourse-setup em vez de confiar nos padrões para garantir parâmetros corretos.
  1. Garantir a Instalação do Sidekiq
  • Antes de reconstruir, verificar se o serviço sidekiq está corretamente incluído no processo de compilação.
  • Se o Sidekiq estiver ausente após a reconstrução, verificar manualmente sua instalação via bundle list | grep sidekiq.
  1. Fixar Dependências para Versões Estáveis
  • Evitar problemas relacionados a dependências usando explicitamente uma imagem Docker do Discourse conhecida por ser estável (por exemplo, discourse/discourse:2.0.20240101).
  • Bloquear as versões das gems dentro do contêiner (bundle install --deployment --without test development).
  1. Reintentar a Emissão do Certificado SSL
  • Aguardar a redefinição do limite de taxa do Let’s Encrypt e tentar gerar o certificado SSL novamente.
  • Se os problemas persistirem, considere usar um certificado autoassinado temporariamente para solução de problemas.

Solicitação de Feedback

Diante desses desafios, gostaríamos de receber a opinião da equipe e da comunidade do Discourse sobre:

  • Sidekiq ausente em /etc/service/ em uma instalação limpa – Alguém mais encontrou esse problema?
  • Melhores práticas para garantir a estabilidade das dependências – Existe uma maneira recomendada de fixar as versões das dependências para instalações do Discourse?
  • Potenciais problemas com tests-passed sendo instalado por padrão – Poderia haver um problema na forma como as versões estão sendo recuperadas?

Qualquer insight seria útil antes de prosseguirmos com a reinstalação. Agradecemos antecipadamente!