Если приложение фляги работает должным образом на вашем локальном компьютере, это может иметь какое-то отношение к настройке маршрутизации порта для вашего контейнера.
В дополнение к порту, ваше приложение фляги получает запросы наесть контейнер Docker, внутри которого он находится, также имеет свои собственные порты.Первый - это внешний набор портов, которые должны быть доступны для приема запросов, и есть еще один набор внутренних портов, которые могут быть связаны с внешними портами и использоваться вашим приложением.
Подробное объяснение доступно в этот ответ здесь , но TLDR:
Запуск вашего контейнера с docker run -it --expose 8008 -p 8008:8008 myContainer
позволит использовать внешний порт с --expose EXTERNALPORT
и свяжет внутренний контейнерный порт с внешним контейнерным портом с помощью -p INTERNALPORT:EXTERNALPORT
.
Наконец, при запуске службы фляги вам необходимо убедиться, что ее порт совпадает с внутренним портом контейнера.Пример использования того же порта, который мы указали ранее:
flask run --host=0.0.0.0 --port=8008