Контейнер Docker доступен изнутри, но не снаружи

#docker #flask

Вопрос:

Я новичок в docker и пытаюсь развернуть приложение flask с помощью контейнера docker, но не могу получить к нему доступ через http://host_ip:port. Вот мой код колбы :

 from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return 'Flask app'



if __name__ == "__main__":
    app.run(host ='0.0.0.0')
 

Вот мой файл Dockerfile:

 FROM python:3.8-slim-buster

WORKDIR /app

COPY requirements.txt requirements.txt
RUN pip3 install -r requirements.txt

COPY . .

CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0"]
 

Я строю образ, используя :
сборка докера —tag python-докер .
и запустите его с помощью:
запуск docker-d -p 5000:5000 python-docker

Я могу получить ответ, когда я : curl localhost:5000, но не при попытке связаться с ним извне

PS : Я просмотрел предыдущие сообщения об этой проблеме, но мне никто не помог.

Комментарии:

1. Что такое «снаружи»?

2. из Интернета, посетив host_ip:5000

3. Есть ли у вас внешний ip-адрес, назначенный хосту, или порт 5000, перенаправленный на хост маршрутизатором на краю вашей сети? Есть ли у вас какой-либо брандмауэр, и если да, настроен ли он для разрешения такого трафика?

4. джаббсон, как я могу знать, что я использую новый сервер ubuntu

5. У меня открыт порт 5000