Antes de adquirir todos os recursos, queria testar o site sem um nome de domínio, então usei o DNS IPv4 público da instância como nome de host do Discourse e para acessar o site, por exemplo, https://ec2_ip_address.us-west-1.compute.amazonaws.com/.
Abri as portas 80 e 443 na instância por meio do grupo de segurança e verifiquei se essas portas são acessíveis a partir da rede pública (testado com um servidor simples em Python).
Mas recebo a mensagem “Este site não pode ser alcançado” no navegador após iniciar o servidor do Discourse com ./discourse-setup ou ./launcher rebuild app.
Tentei o comando discourse doctor, e ele retorna:
Versão do Discourse em ec2-ip_address.us-west-1.compute.amazonaws.com: NÃO ENCONTRADA
Versão do Discourse em localhost: NÃO ENCONTRADA
Não tenho 100% de certeza se a configuração de e-mail está funcionando, mas assumo que a acessibilidade do site seja um problema separado do e-mail.
Alguém pode me indicar o que está faltando ou como posso depurar esse problema?
O status Not found no seu hostname provavelmente ocorre porque o site ainda não está ao vivo. Você precisará compartilhar mais informações do seu log do discourse-doctor.
A reconstrução/inicialização (rebuild/bootstrap) foi concluída com sucesso?
Se a instância EC2 tiver recursos insuficientes, há uma chance de o Discourse levar algum tempo para iniciar (cerca de 3 a 5 minutos em alguns casos).
O que você deve verificar é: se a compilação foi concluída com sucesso, use docker ps para confirmar se o contêiner está em execução e escutando nas portas 80 e 443. Uma vez confirmado isso, o problema está no grupo de segurança da AWS e não na instalação em si.
O status Not found no seu hostname provavelmente ocorre porque o site ainda não está ao ar. Você precisará compartilhar mais informações do log do discourse-doctor.
Concordo. Vou prestar atenção ao log de build e ver se há algo errado. Como posso depurar se houver um erro no log?
Você pode verificar se consegue acessar o servidor via hostname?
Sim, verifiquei o hostname e as portas estão acessíveis no navegador, tanto a 80 quanto a 443. Criei um servidor HTTP em Python servindo apenas alguns arquivos e consigo ver a resposta no navegador.
Engraçado você mencionar isso. Foi isso que inicialmente me atraiu para este tópico. Ajudo muitas pessoas por lá em https://community.letsencrypt.org e pensei que este tópico estivesse dentro da minha área de atuação para ajudar. Para aplicar alguma das minhas ferramentas, eu precisaria saber os nomes de domínio reais.
Você pode registrar um nome de domínio por US$ 3 na GoDaddy. Se o seu tempo vale mais do que US$ 3/hora, você deve registrar um domínio. E se você não tem US$ 3 para registrar um domínio, também não pode arcar com uma instância EC2.
Claro! Veja se alguém mais que usa um nome de domínio .amazonaws.com utiliza o Let’s Encrypt e depois aguarde uma semana. Se você não quiser registrar um domínio, essa seria a próxima coisa que eu tentaria.