一、配置Postfix發送郵件
- 參考之前文章:https://blog.csdn.net/tianjiewang/article/details/105203487
二、使用Sentry服務發送郵件
- 點擊賬號會顯示列表,點擊Admin進入管理頁面
- 選擇mail,點擊發送測試郵件,顯示發送成功,但是登陸郵箱沒有收到郵件
三、檢查郵件發送服務
- 直接在命令行發送郵件給[email protected]用戶,經測試發送服務是沒有問題
四、修改docker-compose.yml文件
- vim docker-compose.yml,添加smtp配置
version: '3.4'
x-restart-policy: &restart_policy
restart: unless-stopped
x-sentry-defaults: &sentry_defaults
<< : *restart_policy
build:
context: ./sentry
args:
- SENTRY_IMAGE
image: sentry-onpremise-local
depends_on:
- redis
- postgres
- memcached
- smtp
- snuba-api
- snuba-consumer
- snuba-replacer
- symbolicator
- kafka
environment:
SENTRY_CONF: '/etc/sentry'
SNUBA: 'http://snuba-api:1218'
# 從這裏開始
SENTRY_EMAIL_HOST: 'mail.jituia.cn'
SENTRY_EMAIL_USER: '[email protected]'
SENTRY_SERVER_EMAIL: '[email protected]'
SENTRY_EMAIL_PASSWORD: '123456'
SENTRY_EMAIL_USE_TLS: 'true'
SENTRY_EMAIL_PORT: 25
# 這裏結束
volumes:
- 'sentry-data:/data'
- './sentry:/etc/sentry'
- 重啓docker-compose服務,測試發現並沒有更改到smtp配置
docker-compose stop
docker-compose up -d
五、修改sentry/conf.yml文件
- 添加smtp配置
mail.host: 'smtp'
mail.port: 25
mail.username: '[email protected]'
mail.password: '123456'
mail.use-tls: true
# The email address to send on behalf of
mail.from: '[email protected]'
- 發送郵件測試,出現SMTP AUTH extension not supported by server
六、修改回原來配置重新測試
- 運行docker-compose,查詢到有一個docker運行着stmp服務
- 發送郵件時候,使用docker logs查詢文件日誌
docker logs 9da3753c2cd8
- 之前用telnet服務發送郵件時候,填寫錯誤郵件出行過bad syntax,懷疑郵箱地址有問題
# mail.port: 25
# mail.username: '[email protected]'
# mail.password: 'incoming'
# mail.use-tls: true
mail.from: '[email protected]'
- 重新發送郵件,顯示已發送成功
- 登陸郵箱,查看郵件,已收到成功
七、參考
- https://segmentfault.com/q/1010000016563419
- https://blog.csdn.net/socct_yj/article/details/103039698
- https://github.com/getsentry/sentry/issues/4252
- https://cloud.tencent.com/developer/article/1439254