Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

594
Visualizações
Haga que la aplicación python Flask sea accesible desde Internet con gunicorn

lo que tengo:
Hice una aplicación web simple usando Flask, que funciona muy bien en localhost.

lo que quiero lograr:
Quiero implementarlo para que sea visible en Internet.


Debido a que Flask dice que el servidor de producción no debe usarse para la implementación, instalé gunicorn.
Logré que funcionara en localhost (ejecutando gunicorn server:app ).

Luego traté de hacerlo público usando la opción -b 0.0.0.0:5000 . decía que se está ejecutando en 192.168....:5000 Ahora podía acceder al sitio web usando esa dirección IP desde mi computadora y también desde mi teléfono conectado al mismo wifi. sin embargo, no pude conectarme al sitio web cuando no usé este wifi.

cuando busqué sobre esto, descubrí que el rango de direcciones IP 192.168.... está reservado para la red local y no se puede acceder desde ningún otro lugar.

¿Cómo necesito ejecutar el script para que sea accesible desde cualquier lugar? ¿Necesito modificar la configuración del firewall? ¿Quizás hay una mejor manera de implementar una aplicación de este tipo en la máquina local usando un marco diferente?

Solo alguna información adicional:

  • versión de Python: 3.9
  • Estoy usando un venv (e instalé un matraz y un gunicorn en él)
  • os: macos 11.6.1 (podría ejecutarlo en una máquina Ubuntu si fuera más fácil)
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

No sé nada sobre gunicornio. Pero lo que solía usar cuando necesitaba implementar una aplicación de frasco era pythonanywhere . Tienen un gran servicio de hosting totalmente gratuito. Es realmente rápido de implementar, no necesita recursos de su computadora y es simplemente genial. También tendría que reenviar el puerto 5000 para su computadora para permitir que otros dispositivos que no estén en la misma red accedan a su aplicación de computadora/frasco. Eso viene con problemas de seguridad. Sin embargo, no necesita nada de eso cuando usa pythonanywhere.

También hay otros excelentes servicios de alojamiento como ese. Es solo el único que conozco y uso hasta ahora, pero seguro que encontrarás otros si no te gusta ese.

over 4 years ago · Santiago Trujillo Relatório

0

Tendrías que hacer los siguientes pasos:

  • lea y aprenda mucho sobre seguridad para servidores web, luego lea un poco más, está lleno de riesgos

  • encuentre la dirección IP de su Mac en su red local y asegúrese de que esté fijada, es decir, configurada como estática en su Mac (en "Preferencias del sistema -> Red" ) o reservada en las tablas DHCP de su enrutador (colocando la dirección MAC de su Mac en su asignación tablas) para que siempre obtenga la misma dirección local en su red interna cuando se inicia

  • inicie sesión en su enrutador y configure "Reenvío de puertos" para reenviar solicitudes externas (procedentes de Internet) para el puerto 5000 (o algún otro puerto) a la dirección IP fija de su Mac y el puerto 5000 donde Gunicorn está sirviendo

  • inicie sesión en su enrutador y encuentre su dirección IP WAN, o vaya a http://whatsmyip.com para obtener la dirección que necesita poner en su navegador, o sus amigos necesitan poner en sus navegadores para ver su nuevo y brillante sitio web

  • tal como está, esto funcionará hasta la próxima vez que su enrutador se reinicie cuando su ISP probablemente le asigne una nueva dirección IP. Si desea que sea permanente, debe 1) pedirle a su ISP una dirección IP estática o 2) suscribirse a un servicio DDNS (por ejemplo, noip.com o dyndns.com) o 3) decirle a sus amigos su nueva dirección IP cada vez reinicias tu enrutador

over 4 years ago · Santiago Trujillo Relatório

0

Esta pregunta no tiene nada que ver con Python o Gunicorn, sino con las redes (por lo que tal vez StackOverflow no sea el lugar correcto para preguntar, sino otra comunidad como ServerFault )

Actualmente, su aplicación ya está expuesta en su máquina en el puerto definido, por lo que el siguiente paso sería reenviar todo el tráfico que llega a su enrutador allí.

Para hacer eso, deberá configurar el firewall de su enrutador para aceptar el tráfico entrante a través de un puerto deseado y finalmente reenviar el tráfico que proviene de ese puerto a su máquina en el puerto 5000 .

Además, en el caso de que ya tengas todo configurado, solo funcionará si tu ISP te proporciona un solo IPv4, lo que actualmente ya no sucede, pero en realidad lo estás compartiendo con pocas personas más. Otra opción sería que configure el tráfico entrante IPv6.

Como puedes ver, esta no es una tarea sencilla ni que deba hacerse sin los debidos cuidados, ya que estarías literalmente abriendo tu red a posibles atacantes.


Así que, para simplificarte al máximo, dado que ya tienes Gunicorn, te recomendaría utilizar alguno de los recursos expuestos por otros usuarios como Heroku o Netlify que son gratuitos para una sola aplicación y cumplirán tus expectativas sin que requieren una gran cantidad de conocimientos de redes.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda