Discourse에서 Postfix 사용하기

그래서 저는 Discourse가 설치된 서버에 Postfix를 설치했습니다. (권장되지 않는다는 것은 알고 있습니다.)
Postfix는 잘 작동하고 있고, 이를 통해 이메일을 보내고 있습니다.

문제는 Discourse/docker가 이메일을 보내려 하지 않는다는 점입니다. (관리자 활성화 메일조차 받지 못합니다)

다음과 같은 내용을 읽었습니다:

  1. Docker 문제입니다.
  2. 같은 서버에 Postfix를 설치해서는 안 됩니다.
  3. 스팸함으로 빠지는 속도가 매우 빠를 것입니다.

여러분은 어떤 SMTP 서버를 사용하시나요?

Postfix와 Discourse는 완벽하게 호환되므로, 주제 제목을 그에 맞게 변경하는 것을 제안합니다. :slight_smile:

아마도 설정에 문제가 있는 것 같습니다.

모든 설정을 올바르게 구성하면 모든 메시지가 바로 받은편지함으로 전달됩니다.

모든 설정을 시도해 보았습니다.

제 postfix /etc/postfix/main.cf 설정은 다음과 같습니다:

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = discourse-mydomain
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = discourse-mydomain, mydomain.com, discourse-mydomain, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128, 140.82.40.82, 172.17.0.2
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = 172.17.0.1
inet_protocols = all
home_mailbox = Maildir/
virtual_alias_maps = hash:/etc/postfix/virtual

실제로 inet_interfaces를 제 도커(docker) 컨테이너에 맞게 변경하기도 했습니다.

  DISCOURSE_SMTP_ADDRESS: mail.mydomain.com
  #DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME:
  DISCOURSE_SMTP_PASSWORD:
  #DISCOURSE_SMTP_ENABLE_START_TLS: true

설정에서 무엇이 잘못된지 모르겠습니다. 어떤 아이디어가 있을까요?

포럼에 오신 것을 환영합니다, @cmoi! 함께하게 되어 기쁩니다. :wave:

저는 mandrillapp.com과 mailgun.com이 꽤 안정적이라고 생각합니다.

디스커스가 메일 로그를 어디로 보내는지 아시는 분 계신가요?

"동작하지 않는다"라고만 말씀하시는 대신, 실제 문제가 무엇인지 먼저 알려주시겠어요?

  • 어떤 작업을 하고 계신가요? (자세히 설명해 주세요)
  • 기대하는 결과는 무엇인가요?
  • 실제로는 어떤 일이 일어나고 있나요?
  • 오류 메시지가 표시되나요?
  • 우리에게 알려주시면 도움이 될 다른 사항이 있나요?

결국 포기하고 Amazon SES를 사용하기로 했습니다.

안녕하세요,

Bitnami의 Discourse 도커 컨테이너에서 비슷한 문제를 겪고 있습니다. 이메일이 전송되지 않고 있습니다.
다음과 같은 오류 메시지가 표시됩니다:
테스트 이메일 전송 중 문제가 발생했습니다. 메일 설정을 다시 확인하고, 호스트가 메일 연결을 차단하지 않는지 확인한 후 다시 시도해 주세요.

제 SMTP 설정은 다음과 같습니다:

전달 방식
주소 smtp.sengrid.net
포트 465
사용자 이름 apikey
인증 login
enable_starttls_auto true

다음으로 어디를 확인하거나 문제를 해결해야 할지 조언을 주실 수 있을까요?

수정: 587 포트, plain 인증 방식, 다른 apikey/비밀번호를 시도해 보았습니다. 유사한 설정으로 다른 앱에서는 문제없이 설정할 수 있었습니다.

기대한 결과는 Discourse에서 테스트 계정 수신함으로 이메일이 전송되는 것입니다.

감사합니다,
Jared

네. Discourse 공식 표준 설치 절차를 따르고 문제가 계속되는지 확인해 보세요.

수정: VM이 465 포트를 차단하고 있을 수도 있습니다. 2525 포트를 시도해 볼 수 있습니다(sendgrid가 이를 지원하는지는 확실하지 않지만, 아마도 지원할 것입니다).