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

Docker环境下Google应用密码验证失败,本地开发正常

问题解决:Docker环境下Gmail应用密码验证失败(535错误)

问题根源

Docker容器中加载的EMAIL_PASSWORD包含多余双引号,导致实际传给Nodemailer的密码是带引号的字符串,和Google应用密码不匹配。本地运行时,dotenv会自动解析.env文件并移除引号,密码正常;但Docker直接读取环境变量时,会把引号当作密码的一部分保留,引发验证失败。

修复步骤

  1. 修正.env文件
    移除密码行的双引号:
    EMAIL_SERVICE=gmail
    EMAIL_USERNAME=emailtest@gmail.com
    EMAIL_PASSWORD=xxxx yyyy zzzz cccc
    
  2. 规范Docker变量传递
    • 用docker run传参时,直接写值不要加引号:
      docker run -e EMAIL_PASSWORD=xxxx yyyy zzzz cccc <镜像名>
      
    • 用Docker Compose时,environment字段直接写值:
      environment:
        - EMAIL_PASSWORD=xxxx yyyy zzzz cccc
      
  3. 验证容器内变量
    执行命令确认密码无引号:
    docker exec -it <容器ID/名称> env
    
    预期输出:
    EMAIL_SERVICE=gmail
    EMAIL_USERNAME=emailtest@gmail.com
    EMAIL_PASSWORD=xxxx yyyy zzzz cccc
    

额外确认

确保Google账号已开启两步验证,且应用密码是正确生成的(应用密码仅生成时可见,遗失需重新创建)。

内容的提问来源于stack exchange,提问作者n9p4

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 07:10:01