estou iniciando um fórum, totalmente novo no Discourse, hospedado na DO. Por algum motivo, estou tendo problemas com SMTP ou com a porta. Agora, gostaria de saber se vocês optaram por login com Google ou login social e se não há problema em não ter opção de cadastro/login local no fórum.
O SMTP está bloqueado no DO por padrão. Se você quiser usar e-mail, precisará encontrar um proxy em algum lugar. Muitas pessoas disseram que o Mailgun funciona bem para o Discourse na nuvem, mas isso não é algo com o qual eu tenha experiência.
Isso pode ser o que você está procurando:
Sim, você pode usar login social (Discord, Google, …) ou Discourse ID (sem configuração) sem SMTP. Você perderá os resumos e as notificações por e-mail, mas se seu objetivo for apenas uma comunidade, funcionará bem mesmo com um engajamento menor (os resumos são projetados para ajudar na retenção).
Ótimo, já tentei o SendGrid, Mailgun e Resend. Tenho o mesmo problema, pode ser um problema de porta; tentei todas as portas. Por enquanto, quero verificar se os logins sociais estão funcionando e eliminar os logins locais.
Já realizei diversas instalações auto-hospedadas com Mailgun e Resend no DigitalOcean (e em outros servidores de nuvem). Você poderia fornecer mais detalhes sobre o problema que está enfrentando? Você está editando seu app.yml com as configurações apropriadas? Assumo que se trata de uma instalação padrão?
A DO informa: “Por favor, tome ciência de que, além da porta 25 previamente bloqueada, as portas 465 e 587 foram bloqueadas nos droplets a partir de 6 de março de 2025. Isso visa garantir que os servidores da DigitalOcean não sejam utilizados para envio de e-mails de spam.”
E vejo no painel de administração:
Há 30 trabalhos de e-mail que falharam. Verifique seu app.yml e assegure-se de que as configurações do servidor de e-mail estão corretas. Veja os trabalhos falhados no Sidekiq.
Recriei a API de resend, alterei a porta para 587, tentei também com 2525. Nada está funcionando para mim.
este é provavelmente o principal problema que está causando seus erros: você está usando aspas curvas. Arquivos YML não aceitam isso e geralmente quebram. Você precisa usar aspas simples ou duplas retas, como 'senha' ou "senha".
você fez uma instalação padrão em um subdomínio ou esta é uma instalação no domínio raiz? Se for o primeiro caso, deveria ser algo como forum.dobato.au ou discourse.dobato.au (verifique o que está configurado no seu servidor de nomes). A menos que você tenha planejado uma instalação no domínio raiz, isso precisa ser corrigido.
esta linha é desnecessária, remova-a.
embora o Resend suporte essa porta e ela deva funcionar, o padrão é 587.
esta linha não é necessária; não há sentido em forçar o correio a iniciar STARTTLS — o correio Ruby subjacente (ActionMailer) usa enable_starttls_auto: true, o que significa que ele atualizará automaticamente a conexão para TLS se o servidor (Resend) suportar. Apague esta linha.
Sua seção correta de app.yml deve ficar assim:
DISCOURSE_HOSTNAME: dobato.au # (verifique isso — pode estar incorreto!)
DISCOURSE_DEVELOPER_EMAILS: meuemail@outlook.com
DISCOURSE_SMTP_ADDRESS: smtp.resend.com
DISCOURSE_SMTP_USER_NAME: resend
DISCOURSE_SMTP_PASSWORD: "re_chave_api_real_aqui" # observe as aspas retas!
DISCOURSE_SMTP_PORT: 587
DISCOURSE_NOTIFICATION_EMAIL: noreply@dobato.au
Ah, esqueci do DO, haha. Eu migrei deles há um tempo. Na minha cabeça, eu estava pensando em Resend e Hetzner. Então, sim, use o 2525 (agora me lembro de ter trocado isso quando migrei também).
edit: corrigi minha postagem. Obrigado, Jakee
meu site caiu agora. é um site novo com poucos membros, não sei como baixar minhas páginas personalizadas e os membros. não quero usar SMTP de jeito nenhum.
Sim, seu arquivo yml provavelmente está com problemas. Poste o conteúdo completo aqui (sem os endereços de e-mail e senhas). Isso realmente não deveria ser tão difícil para colocar tudo no ar.
Só por curiosidade, qual o tamanho da instância (droplet) que você está usando no DigitalOcean?
Você conseguiu verificar se o seu servidor de nomes (name server) está configurado corretamente?
Entendi. É possível hospedar o Discourse no Lightsail com o SES (alguns usuários aqui fazem isso). Ou você pode tentar a porta 2525, caso ainda não tenha feito. Mas, se quiser evitar essas dores de cabeça com portas, pode migrar para um provedor diferente, como o Hetzner ou o Lightsail.