Как исправить ошибку при отправке почты с помощью django в контейнере docker? (Невозможно присвоить запрашиваемый адрес)
Получаю ошибку при отправке письма как в Celery, так и в самой оболочке. Без самого докера, на локальном компьютере такой ошибки нет, а на сервере есть.
Ошибка:
send_mail('test', 'test msg', 'volkodav2312@bk.ru', ['volkodav2312@inbox.ru'])
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/usr/local/lib/python3.10/site-packages/django/core/mail/__init__.py", line 87, in send_mail
return mail.send()
File "/usr/local/lib/python3.10/site-packages/django/core/mail/message.py", line 298, in send
return self.get_connection(fail_silently).send_messages([self])
File "/usr/local/lib/python3.10/site-packages/django/core/mail/backends/smtp.py", line 124, in send_messages
new_conn_created = self.open()
File "/usr/local/lib/python3.10/site-packages/django/core/mail/backends/smtp.py", line 80, in open
self.connection = self.connection_class(
File "/usr/local/lib/python3.10/smtplib.py", line 255, in __init__
(code, msg) = self.connect(host, port)
File "/usr/local/lib/python3.10/smtplib.py", line 341, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/local/lib/python3.10/smtplib.py", line 312, in _get_socket
return socket.create_connection((host, port), timeout,
File "/usr/local/lib/python3.10/socket.py", line 845, in create_connection
raise err
File "/usr/local/lib/python3.10/socket.py", line 833, in create_connection
sock.connect(sa)
OSError: [Errno 99] Cannot assign requested address
Я просмотрел другие ответы и не нашел ничего полезного. У меня настроен пароль, эта ошибка возникает в докере.
OSError: [Errno 99] Cannot assign requested address
это означает, что ip/port
уже занято. Измените ip/port
и попробуйте снова
найти docker-compose.yml
version: '3.8'
services:
web:
build: .
restart: unless-stopped
ports: ['192.107.1.2:8000:8000'] # <-- change IP and port here
Попробуйте это