Discourse Docker 컨테이너 안에서 curl을 사용하여 메시지를 보내는 것을 시도해 보았습니다. 평문 SMTP와 포트 25를 지정하도록 확인한 후, 호스트를 통해 이메일을 정상적으로 보낼 수 있었습니다:
$ cd /var/discourse/
$ sudo ./launcher enter app
x86_64 arch detected.
root@discourse-app:/var/www/discourse# curl smtp://172.17.0.1 --mail-from discourse@mydomain.com --mail-rcpt myname@gmail.com --upload-file README.md
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7077 0 0 100 7077 0 575k --:--:-- --:--:-- --:--:-- 575k
root@discourse-app:/var/www/discourse#
호스트의 이메일 로그에서 이 테스트가 어떻게 보이는지 확인해 보았습니다:
May 24 16:53:49 localhost postfix/smtpd[25494]: connect from discourse-docker[172.17.0.2]
May 24 16:53:49 localhost postfix/smtpd[25494]: EB62CB5FCD: client=discourse-docker[172.17.0.2]
May 24 16:53:49 localhost postfix/cleanup[26008]: EB62CB5FCD: message-id=<>
May 24 16:53:49 localhost opendkim[1365]: EB62CB5FCD: can't determine message sender; accepting
May 24 16:53:49 localhost postfix/smtpd[25494]: disconnect from discourse-docker[172.17.0.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
app.yml에서 TLS를 지정하지 않고 포트 25를 사용했으며, 이는 어제 재빌드 전까지는 정상적으로 작동했었습니다. 따라서 최신 버전의 Discourse가 app.yml의 SMTP 설정을 무시하고 있는 것으로 점점 더 보입니다.