DISCOURSE_NOTIFICATION_EMAIL은 아무 값으로든 설정할 수 있나요, 아니면 실제 이메일 주소여야 하나요?

Discourse가 이메일과 어떻게 상호작용하는지에 대한 큰 그림을 확실히 파악하지 못하고 있어, 이 질문은 좀 멍청하게 들릴 수도 있을 것 같습니다.

저는 discourse.mydomain.com을 자체 호스팅하고 있으며, 이메일에는 SendGrid를 사용하고 있고, 현재까지는 모든 것이 정상적으로 작동하고 있습니다.

app.yaml 파일에서 다음과 같이 설정했습니다.

DISCOURSE_NOTIFICATION_EMAIL: real_address@mydomain.com

이 설정은 아무 값으로든 지정할 수 있는 건가요, 아니면 단순히 외형적인 목적만을 위한 건가요? 즉, 실제로 존재하지 않는 이메일 주소인 noreply@discourse.mydomain.com으로 변경해도 되는 건가요? 아니면 이 이메일 주소에는 실제로 수신함을 포함한 설정이 필요한 건가요?

감사합니다.

Daniel

안녕하세요 Daniel :waving_hand:

수신함이 필요 없다는 걸 알게 되어 기뻐하실 겁니다. 포럼은 SMTP를 통해 트랜잭션 이메일을 보내므로 SendGrid에 로그인해야 합니다. Discourse는 서브도메인의 어떤 주소도 사용할 수 있습니다.

컨테이너의 설정에서 Discourse가 계정 활성화, 이메일 알림, 비밀번호 재설정 이메일 등 트랜잭션 이메일을 항상 noreply@ 주소로 보내도록 지정하고 있는 것입니다.

기억이 정확하지는 않지만, 지난해 설치할 당시 컨테이너의 키/비밀번호/주소에서 따옴표를 제거해야 했던 것 같습니다. 정확히 어디서 제거했는지, 그리고 그 전에 어떤 흥미로운 에러가 발생했는지 기록해 두었으면 좋았을 텐데 아쉬울 따름입니다.

Discourse를 설정하고 실행 중이며 Discourse로 이메일을 수신하기를 원한다면, SendGrid에서 API 키를 가져와야 합니다. 하지만 저는 MailGun에서 API 키를 받았습니다.

이 API를 사용하면 사실상 받은 편지함 같은 것이 존재하지 않습니다. 메일 제공자가 허용하는 도메인과 일치하는 한, 관리자/운영자는 그룹/카테고리에 대한 수신 이메일 주소를 자유롭게 설정할 수 있습니다.

API를 통해 시스템은 이메일이 해당 주제(topic)로 전달되도록 조치를 취할 수 있습니다. 내부적으로 이 과정이 실패하면, 이메일 추적 기록이 관리자 패널 로그에 남습니다. 시스템이 수신 이메일을 위해 임시 사용자를 생성하지 못할 경우, 발신자의 메일 제공자가 ‘전달 불가(Undeliverable)’ 메일을 보내며, 그 내용에는 '여기에 계정이 있으신가요?'라는 문구가 포함됩니다. 제 경험상 이런 일이 발생했습니다.

그렇게 잘 설명해 주셔서 감사합니다!