Como configurar o SMTP para usar localhost?

Tenho o postfix configurado para funcionar no host local do Docker, de modo que um teste com swaks --to destination@domain.tld --from admin@hostdomain.tld --server localhost -tls é entregue conforme o esperado. Ele usa a porta 25 e envia o e-mail sem nenhum problema.

Portanto, surge a pergunta: como configurar adequadamente as opções SMTP no app.yml para utilizar localhost na entrega de e-mails?

Defina o endereço SMTP para 127.0.0.1

Para ficar claro, você está dizendo que apenas o IP deve ser configurado e os outros campos devem estar comentados? Por exemplo:

  DISCOURSE_SMTP_ADDRESS: 127.0.0.1
  #DISCOURSE_SMTP_PORT: 25
  #DISCOURSE_SMTP_USER_NAME: 
  #DISCOURSE_SMTP_PASSWORD:
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (opcional, padrão true)

Se estiver no mesmo host do Docker, mas em um container diferente, você precisará especificar o IP do host.

127.0.0.1 não funcionará, pois é o endereço de loopback. Cada container vê 127.0.0.1 como si mesmo.

Isso não está em um contêiner Docker diferente, mas simplesmente no próprio host do Docker.

Ainda será necessário o IP do host, então.

Então, nesse caso, você precisa usar o IP público ou existe um esquema de IP especial que o Docker utiliza? Por exemplo, dentro do host vejo docker0 com 172.17.0.1 e, dentro do contêiner (./launcher enter app; apt-get install ifconfig), eth0 é 172.17.0.2. Suspeito que eu deva usar o 172.17.0.1 do host dentro do contêiner do Discourse, mas não gostaria que ele mudasse de alguma forma em algum momento.

Apenas para documentar aqui, o seguinte foi suficiente (todas as outras linhas SMTP comentadas) para entregar ao servidor SMTP do host Docker se nenhuma autenticação for necessária:

  DISCOURSE_SMTP_ADDRESS: 172.17.0.1
  DISCOURSE_SMTP_PORT: 25