You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Cloud Run部署django-allauth时SMTP中继连接断开问题

Google Cloud Run部署后SMTP中继连接异常问题

问题详情

本地运行SMTP中继完全正常,但部署到Google Cloud Run后出现以下错误:

SMTPServerDisconnected at /account/signup/
Connection unexpectedly closed
...
  File "/usr/local/lib/python3.9/site-packages/django/core/mail/backends/smtp.py", line 67, in open
    self.connection.starttls(keyfile=self.ssl_keyfile, certfile=self.ssl_certfile)
  File "/usr/local/lib/python3.9/smtplib.py", line 764, in starttls
    self.ehlo_or_helo_if_needed()
  File "/usr/local/lib/python3.9/smtplib.py", line 607, in ehlo_or_helo_if_needed
    (code, resp) = self.helo()
  File "/usr/local/lib/python3.9/smtplib.py", line 436, in helo
    (code, msg) = self.getreply()
  File "/usr/local/lib/python3.9/smtplib.py", line 400, in getreply
    raise SMTPServerDisconnected("Connection unexpectedly closed")

settings.py中的SMTP相关配置:

EMAIL_HOST = 'smtp-relay.gmail.com'
EMAIL_HOST_USER = env('EMAIL_HOST_USER', default=None) # 根据回溯信息,凭证环境变量已正确加载
EMAIL_HOST_PASSWORD = env('EMAIL_HOST_PASSWORD', default=None)
EMAIL_PORT = 587
EMAIL_USE_TLS = True
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

已尝试的排查操作

  • 通过Dockerfile构建镜像时添加EXPOSE 587/tcp,无效果
  • 已启用邮箱“不太安全的应用”选项,使用账户生成的应用密码
  • 查阅Google相关文档,文档说明无阻塞但未明确提及Cloud Run服务

后续处理过程

  1. 更换SocketLabs免费版SMTP提供商后可正常运行,确认问题出在Google Workspace SMTP配置,而非Docker镜像或Cloud Run部署,随后向Google管理员提交支持工单。
  2. 支持请求未得到解决,被告知Workspace/邮箱账户配置正常,建议联系Gcloud进一步支持(暗示为基础设施/应用问题)。因已确认其他提供商可正常运行,不再继续跟进,最终切换至另一同时提供邮箱托管和SMTP服务的实惠提供商(原本未使用Workspace额外功能)。

目前仍好奇是否有其他用户遇到相同问题并找到针对性解决方案。

内容的提问来源于stack exchange,提问作者tomma-d

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 08:35:34