여러 번 시행착오를 거친 끝에 Postfix와 함께 Discourse를 동작하도록 만들었습니다. 제가 사용한 단계는 다음과 같습니다. 도움이 되길 바랍니다:
-
A 레코드를 설정하여 새 서버를 가리키도록 합니다. 예를 들어
forum.domain.com -
Postfix를 설치하고
forum.domain.com을myhostname으로 설정한 뒤, Discourse 컨테이너가 인증 없이 Postfix와 통신할 수 있도록mynetworks에172.17.0.0/16을 추가합니다.172.17.0.0/16은 Docker 컨테이너에서 기본적으로 사용되는 네트워크입니다. -
Postfix가 이메일을 보낼 수 있는지 확인합니다. 저는
swaks를 사용하는 것을 선호합니다.swaks -t your_name@gmail.com"This is a test mailing"이라는 제목의 이메일을 수신해야 합니다.
-
containers/app.yml에서DISCOURSE_SMTP_USER_NAME,DISCOURSE_SMTP_PASSWORD,DISCOURSE_SMTP_ENABLE_START_TLS에 해당하는 3줄을 주석 처리하도록 확인하세요.그리고
DISCOURSE_SMTP_DOMAIN을forum.domain.com으로 설정합니다(여기서는 자신의 도메인 이름으로 대체해야 합니다). -
테스트하려면
docker exec -it app bash명령으로 Discourse 컨테이너에 접속한 후 다음을 실행할 수 있습니다:apt update apt install -y swaks swaks -t name@gmail.com --server forum.domain.com"This is a test mailing"이라는 제목의 이메일을 수신해야 합니다.
-
./launcher rebuild app명령으로 Discourse를 재시작합니다. 이제 새 계정을 생성하고 인증 이메일을 수신할 수 있어야 합니다.