Este é um bug que foi corrigido no Waitress 1.0.2. Você deve atualizar para a versão mais recente disponível, ou arquivar um relatório de erro no Launchpad para solicitar que o Ubuntu backport a correção do bug.
Estou executando uma instância do GCE. Eu corri sudo ufw allow http && nc -l 80
e é bem sucedido, mostrando que 80 está aberto. No entanto, quando tento abrir um servidor executando waitress, um servidor Python, com sudo waitress-serve --listen=0.0.0.0:80 --call 'flaskr:create_app'
, ele não funciona. Eu me certifiquei de que os firewalls configurados no GCP permitissem conexões TCP na porta 80. Quando eu uso localhost
em vez de 0.0.0.0
, tudo bem, mas se eu usar 0.0.0.0
, ele mostrará o seguinte rastreamento de pilha:
File "/usr/lib/python3/dist-packages/waitress/__init__.py", line 11, in serve
server = _server(app, **kw)
File "/usr/lib/python3/dist-packages/waitress/server.py", line 85, in create_server
sockinfo=sockinfo)
File "/usr/lib/python3/dist-packages/waitress/server.py", line 183, in __init__
self.effective_host, self.effective_port = self.getsockname()
File "/usr/lib/python3/dist-packages/waitress/server.py", line 299, in getsockname
self.socketmod.NI_NUMERICSERV)
socket.gaierror: [Errno -3] Temporary failure in name resolution
Isso indica que há um problema de DNS acontecendo, mas não estou claro o que é. 0.0.0.0
indica que ele tentará se conectar para qualquer endereço IP que puder. Alguma idéia do que poderia ser o problema?
Este é um bug que foi corrigido no Waitress 1.0.2. Você deve atualizar para a versão mais recente disponível, ou arquivar um relatório de erro no Launchpad para solicitar que o Ubuntu backport a correção do bug.
Tags connection firewall