我为email_settings添加了一个新的email_settings文件(保存在tcms_settings_dir上),并重新启动了docker容器,以刷新设置并获取新文件。email_config文件如下:
import os
import pathlib
import tempfile
from importlib import import_module
import pkg_resources
from django.contrib.messages import constants as messages
from django.urls import reverse_lazy
from django.utils.translation import gettext_lazy as _
import tcms
SERVER_EMAIL = DEFAULT_FROM_EMAIL = 'my@emailcom'
# additional Kiwi TCMS setting
EMAIL_SUBJECT_PREFIX = '[Kiwi-TCMS] '
EMAIL_HOST = 'mail.my_server.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'admin@email.com'
EMAIL_HOST_PASSWORD = 'my_pass'
EMAIL_USE_TLS = True然后我尝试使用: sudo exec -it kiwi_web /Kiwi/manage.py sendtestemail my_email@email.com
我得到了以下错误:
Traceback (most recent call last):
File "/Kiwi/manage.py", line 12, in <module> execute_from_command_line(sys.argv)
File "/venv/lib64/python3.8/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line utility.execute()
File "/venv/lib64/python3.8/site-packages/django/core/management/__init__.py", line 440, in execute self.fetch_command(subcommand).run_from_argv(self.argv)
File "/venv/lib64/python3.8/site-packages/django/core/management/base.py", line 414, in run_from_argv self.execute(*args, **cmd_options)
File "/venv/lib64/python3.8/site-packages/django/core/management/base.py", line 460, in execute output = self.handle(*args, **options)
File "/venv/lib64/python3.8/site-packages/django/core/management/commands/sendtestemail.py", line 35, in handle
send_mail(File "/venv/lib64/python3.8/site-packages/django/core/mail/__init__.py", line 87, in send_mail return mail.send()
File "/venv/lib64/python3.8/site-packages/django/core/mail/message.py", line 298, in send
return self.get_connection(fail_silently).send_messages([self])
File "/venv/lib64/python3.8/site-packages/django/core/mail/backends/smtp.py", line 124, in send_messages new_conn_created = self.open()
File "/venv/lib64/python3.8/site-packages/django/core/mail/backends/smtp.py", line 80, in open self.connection = self.connection_class(File "/usr/lib64/python3.8/smtplib.py", line 253, in __init__ (code, msg) = self.connect(host, port)
File "/usr/lib64/python3.8/smtplib.py", line 337, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/lib64/python3.8/smtplib.py", line 308, in _get_socket
return socket.create_connection((host, port), timeout,
File "/usr/lib64/python3.8/socket.py", line 808, in create_connection
raise err
File "/usr/lib64/python3.8/socket.py", line 796, in create_connection
sock.connect(sa)
OSError: [Errno 99] Cannot assign requested address我已经检查了承载坞容器的计算机是否可以与smtp服务器(pinged)连接,并且smtp设置是正确的,因为它们目前正在一个laravel项目中使用。我不知道是否必须打开码头容器上的端口才能与smtp服务器通信。
你能帮我弄清楚是什么原因造成的吗?
发布于 2022-03-27 10:54:47
假设您的配置是正确的,则此错误是一般的网络错误。在网络层本身,有太多的事情会出错。
。
操作要求:如果您想在这里取得任何进展,将在原始问题中提供所有上述信息。
更新:提供的细节仍然没有帮助,因为这个错误太笼统,无法理解正在发生的事情。这是某种网络问题,但如果不能访问运行容器的系统(并公开电子邮件凭据),我们就无法调试任何东西。
https://stackoverflow.com/questions/71605120
复制相似问题