Como altero o endereço de e-mail em admin/settings/emails?

Comecei a configurar o Discourse na Digital Ocean e recebi a seguinte mensagem de erro, e agora meu quadro do Discourse em wespenreboards.com não carrega.

1 curtida

Parece que você tentou inserir seu endereço IP em vez do nome do seu domínio. O valor entre colchetes é o que já está lá, portanto, para aqueles que você não está atualizando, pode pressionar ‘enter’ e passar para o próximo sem alterar nada.

Você deve conseguir reiniciar sua instância executando:

./launcher restart web_only

2 curtidas

Incrível! Funcionou… obrigado! Agora o site carrega. Então, o nome do host é o endereço da web? Eu coloquei o IP porque no WinSCP HOST é listado como o endereço IP.

1 curtida

Para essa parte na configuração do discourse, você deve apenas pressionar ‘enter’ e pular para a próxima etapa, pois ele já sabe disso da última vez. E então, quando chegar às específicas de SMTP, você pode adicionar as novas informações para substituir o que estava lá.

Mas não funciona com IPs, apenas com domínios. :+1:

3 curtidas

Só queria ver como você está indo. :slightly_smiling_face: Você já conseguiu fazer funcionar?

2 curtidas

Obrigado por verificar, Jammy. Estou um pouco lento porque também estou me mudando para outro país. Então, ainda não tentei.

Eu já tinha saído do console quando você sugeriu que eu continuasse lá, então acho que preciso começar tudo de novo com meu nome de host. E novamente, é o discourse.example.com, certo?

Se algo der errado no processo que afete negativamente os usuários, por exemplo, o Discourse cair como da última vez, existe um comando “universal” para desfazer o que fiz, para que o Discourse pelo menos funcione como antes de eu começar a usar o console? Só quero me precaver :slight_smile:

2 curtidas

Tudo bem, não quero apressá-lo. :slightly_smiling_face:

Vou colocar um passo a passo para você consultar quando estiver pronto:

  • Abra seu console Digital Ocean
  • cd /var/discourse
  • ./discourse-setup

Isso fará uma série de perguntas. Como seu fórum já está funcionando, você verá que os valores entre colchetes (por exemplo, [discourse.example.com]) são preenchidos com suas informações existentes:

Se essas informações não precisarem ser alteradas, você pode simplesmente pressionar ‘enter’ e passar para a próxima pergunta.

Aqui estão as perguntas que ele faz:

Hostname para seu Discourse? [discourse.example.com]: 
Endereço de e-mail para a(s) conta(s) de administrador? [me@example.com,you@example.com]: 
Endereço do servidor SMTP? [smtp.example.com]: 
Porta SMTP? [587]: 
Nome de usuário SMTP? [user@example.com]: 
Senha SMTP? [pa$$word]: 
E-mail da conta Let's Encrypt? (ENTER para pular) [me@example.com]: 
Chave de licença Maxmind opcional () [xxxxxxxxxxxxxxxx]:

As que você deseja adicionar novas informações são as de SMTP. A porta SMTP ainda será 587, então você pode simplesmente pressionar ‘enter’ para essa também. As outras informações você precisará obter do seu provedor de e-mail (sendinblue, acredito).

Depois que todas as informações forem inseridas, ele lhe dará a oportunidade de revisar o que você inseriu e, em seguida, reconstruirá sua instância com essas novas informações. Se tudo correr bem, é só isso que você precisa. :+1:

Se, por algum motivo, não funcionar (como ontem), executar ./launcher restart web_only deve trazer de volta sua versão anterior à reconstrução.


De uma de suas capturas de tela anteriores, parece que você também poderia se beneficiar de um pouco de manutenção do servidor, mas podemos abordar isso se você estiver interessado, depois que resolvermos seu e-mail. :slightly_smiling_face::+1:

2 curtidas

Isso é uma grande ajuda! Obrigado. Voltarei aqui assim que tiver tentado e, bem-sucedido ou não, avisarei você :slight_smile:

2 curtidas

Executei e recebi a seguinte mensagem de erro no final:

Então tentei reiniciar o web_only e recebi a seguinte mensagem de erro, e agora meu Discourse está inativo. O que fazer?

1 curtida

Parece que o e-mail do Let’s Encrypt não foi aceito.

Mas para trazer o seu antigo de volta, você pode:

./launcher restart data

E então

./launcher restart web_only

1 curtida

Ainda não me deixa. Preciso sair do console primeiro e depois executar restart data e depois web_only?

Não tenho certeza do que isso significa também: Cannot link to a non running container: /data AS /web_only/data

1 curtida

No meu contêiner, parece assim. Não sei se é assim que deveria parecer?

1 curtida

Esses arquivos extras web_only são as duas tentativas que fizemos de atualizá-lo. Eles seriam limpos durante uma limpeza (embora não execute uma até termos seu site funcionando, pois ela organizará tudo o que não estiver ativamente anexado a algo :slightly_smiling_face:).

Espelhei sua configuração em um site de teste (dois contêineres e Sendinblue SMTP) para tentar ter uma ideia melhor do que está acontecendo. Quando recebi a mensagem Cannot link to a non running container: /data AS /web_only/data, reiniciar o contêiner de dados e, em seguida, reiniciar o contêiner web_only funcionou para mim. Mas acabei de tentar complicar uma reexecução do discourse-setup de forma semelhante para tentar replicar sua situação exata para um melhor entendimento.

Talvez eu deva dizer que uma instalação em um contêiner é muito mais amplamente suportada, então, se isso estiver se mostrando muito frustrante, uma opção alternativa pode ser criar um novo droplet Digital Ocean e instalar uma nova instância usando o guia de instalação padrão. Você pode então restaurar um backup e, esperançosamente, ter um tempo muito mais fácil para cuidar dele.

1 curtida

Você pode executar

 ./launcher destroy web_only
 ./launcher start web_only

E isso o conectará ao contêiner de dados.

Se tudo o que você quer fazer é alterar as configurações de smtp, então você pode apenas editar o web_only.yml com nano e, em seguida, executar a sequência de destroy, start acima.

3 curtidas

Saí do console, abri um novo e segui suas instruções, mas recebo a mesma mensagem de erro: “não é possível vincular a um contêiner não em execução”.

Existe alguma maneira de simplesmente voltar ao estado anterior à configuração do smtp no console? Não posso fazer uma configuração completa do Discourse agora. É muito frustrante quando estou no meio de uma mudança.

Obrigado, Jammy.

2 curtidas

Felizmente a cavalaria chegou novamente. :slightly_smiling_face: E consigo ver que o seu site já voltou a funcionar. :partying_face:

2 curtidas

@pfaffman Graças a Deus, isso funcionou. Obrigado Jay!

Acho que preciso deixar isso quieto até estar em meu novo local até o final da próxima semana. O importante agora é manter o fórum funcionando. Parece que as pessoas ainda podem alterar senhas e se inscrever no fórum usando sua senha existente do Google. Então, faremos isso por enquanto. E você me mostrou como fazer um backup de disco rígido do WinSCP ontem. Então, trabalharemos com isso por enquanto, eu acho.

Obrigado novamente!

EDIT: Quando eu disse que está funcionando, quis dizer que o site está no ar e funcionando. Ainda preciso tentar o resto de suas sugestões para alterar o SMTP diretamente, mas provavelmente farei isso mais tarde.

2 curtidas

Tenho dificuldade em desistir, LOL. Jay, Jammy, ou alguém, vocês conseguem ver alguma discrepância nisso? Por exemplo, digitei OFF depois de LETSENCRYPT_ACCOUNT_EMAIL:: Não tenho certeza se isso estava correto…

## TODO: O servidor de e-mail SMTP usado para validar novas contas e enviar notificações
  # O ENDEREÇO SMTP, nome de usuário e senha são necessários
  # AVISO que o caractere '#' na senha SMTP pode causar problemas!
  DISCOURSE_SMTP_ADDRESS: smtp-relay.sendinblue.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: wespenre2@gmail.com
  DISCOURSE_SMTP_PASSWORD: "removido nesta colagem"
  DISCOURSE_SMTP_ENABLE_START_TLS: false           # (opcional, padrão true)
  DISCOURSE_SMTP_DOMAIN: gmail.com
  DISCOURSE_NOTIFICATION_EMAIL: wespenre2@gmail.com


  ## Se você adicionou o template Lets Encrypt, descomente abaixo para obter um certificado SSL gratuito
  LETSENCRYPT_ACCOUNT_EMAIL: OFF

  ## TODO: configurar a conectividade com os bancos de dados
  DISCOURSE_DB_SOCKET: ''
  #DISCOURSE_DB_USERNAME: discourse
  DISCOURSE_DB_PASSWORD: (removido nesta colagem)
  DISCOURSE_DB_HOST: data
  DISCOURSE_REDIS_HOST: data

1 curtida

Deixei meu letsencrypt_account_email como o padrão me@example.com (ter algo que não seja um e-mail lá quebrará a reconstrução). Também deixei o DISCOURSE_SMTP_ENABLE_START_TLS: como o padrão true.

E o seu domínio de e-mail deve ser o nome do seu domínio, e então acho que você quer que seu e-mail de notificação tenha um noreply@ ou algo semelhante na frente dele.

Deixe-me pegar uma cópia do meu

DISCOURSE_SMTP_ADDRESS: smtp-relay.sendinblue.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: admin@jammydodger.monster
DISCOURSE_SMTP_PASSWORD: "secret-password"
#DISCOURSE_SMTP_ENABLE_START_TLS: true           # (opcional, padrão true)
DISCOURSE_SMTP_DOMAIN: test.jammydodger.monster
DISCOURSE_NOTIFICATION_EMAIL: noreply@test.jammydodger.monster

## Se você adicionou o template Lets Encrypt, descomente abaixo para obter um certificado SSL gratuito
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
1 curtida

Obrigado, Jammy. Ufa, vou tentar novamente e voltarei aqui… LOL.

Antes de começar, quero ter certeza: o e-mail noreply, deve ser noreply@gmail.com? O Gmail é o único domínio de e-mail que tenho usado no Discourse. Isso cria automaticamente uma opção noreply no Gmail, ou qual domínio devo usar para o e-mail noreply? Ou posso, em vez de ter um e-mail noreply, digitar wespenre2@gmail.com?

Editei o seguinte no WinSCP (veja abaixo) clicando com o botão direito em web_only.yml, mas ainda não o atualizei. Quero ouvir sua opinião primeiro.

Então, se tudo parecer certo e eu o atualizar, executo ./launcher destroy web_only e depois ./launcher start web_only, após a atualização, certo, e então deve funcionar?

Que tal isto?

 ## TODO: O servidor de e-mail SMTP usado para validar novas contas e enviar notificações
  # Endereço SMTP, nome de usuário e senha são necessários
  # AVISO: o caractere '#' na senha SMTP pode causar problemas!
  DISCOURSE_SMTP_ADDRESS: smtp-relay.sendinblue.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: wespenre2@gmail.com
  DISCOURSE_SMTP_PASSWORD: "password"
  DISCOURSE_SMTP_ENABLE_START_TLS: true           # (opcional, padrão true)
  DISCOURSE_SMTP_DOMAIN: gmail.com
  DISCOURSE_NOTIFICATION_EMAIL: noreply@gmail.com


  ## Se você adicionou o modelo Lets Encrypt, descomente abaixo para obter um certificado SSL gratuito
  LETSENCRYPT_ACCOUNT_EMAIL: wespenre2@gmail.com


1 curtida