배경
- Ghost 5.9버전 이후 현재 Mail 발송이 되지 않는다.
Ghost is currently unable to send email. See http://support.ghost.org/mail for instructions.
- 이로 인해서, 멤버십 관련 가입을 위한 Magic Link라든가, News Letter 등 모든 부분이 Working하지 않는다.
- 특히 Ghost 5.9 버전 이후부터는 Comment 기능이 추가되었는데, 이 역시 가입이 제대로 되지 않기 때문에 Mail 부분을 별도로 Setting을 해줘야 한다.
- 현재 Mailgun, SendGrid, Amazon SES, Gmail 정도를 소개해주고 있는데, Gmail을 제외하고는 모두 무료이다.
- 물론 Transactional Mail이 아닌 Bulk Mail(News Letter)등을 위해서는 Gmail외에 다른 Solution을 써야 하지만, 현 시점에는 News Letter를 쓰고 있지 않기 떄문에 GMail로 Mail을 Setting을 하였다.
환경
- Ghost Version: 5.10.1
- Self-hosted Environment: Docker on Ubuntu 20.04 LTS
방법
- 우선 Ghost를 위한 앱 비밀번호를 생성해줘야 한다.
- 이를 위해서 구글 계정에 접속을 한후 좌측에서 보안을 클릭한다.
- 그리고 Google에 로그인에서 앱 비밀번호를 눌러서 Ghost를 위한 앱 비밀번호를 생성한다.
- 그리고 그 비밀번호를 Ghost 내에 "config.production.json"에 설정을 해줘야 한다.
- Docker를 사용한다면, "docker exec -it Container_name /bin/bash"로 Ghost Docker에 직접 접속해보면 바로 확인할 수 있다.
- 다음과 같이 수정해주면 된다.
"mail": {
"from": "'FirstName LastName' <gmail@gmail.com>",
"transport": "SMTP",
"options": {
"service": "Google",
"host": "smtp.gmail.com",
"port": "465",
"secure": true,
"auth": {
"user": "gmail@gmail.com",
"pass": "AppPassword"
}
}
},