Проблемы с доступом к контейнеру Docker - PullRequest
0 голосов
/ 09 января 2019

У меня работает сервер Flask на порту 8090

...code of the Flask server...
app.run(host='0.0.0.0', port=8090, debug=True)

Тогда у меня есть Dockerfile следующим образом:

FROM ubuntu
WORKDIR home

MAINTAINER Califfo

# copy files into the image
ADD files /home/files
ADD ServerCategory.py /home
ADD requirements.txt /home

# install python3, pip and Flask
RUN apt-get update && apt-get install -y python3 python3-pip net-tools lsof && pip3 install -r requirements.txt

# launch flask server
RUN python3 ServerCategory.py flask run

Когда я создаю образ и запускаю контейнер с этой командой

docker build -t server_category . && docker run -p 8090:8090 -it --rm server_category

все в порядке.

  • Работает на http://0.0.0.0:8090/ (нажмите CTRL + C, чтобы выйти)
  • Перезапуск со стат
  • Отладчик активен!
  • PIN-код отладчика: 280-257-458

Но я не могу подключиться к серверу из браузера, например, с помощью localhost: 8090 /. Я получаю эту ошибку

Error: Couldn't connect to server

1 Ответ

0 голосов
/ 09 января 2019

Как говорит Науэр в комментариях, одна из проблем заключается в том, что у вас нет команды ENTRYPOINT или CMD в Dockerfile. Поэтому, когда вы запускаете контейнер, он немедленно закрывается. С вашей командой docker run контейнер все еще жив, потому что вы открываете bash с флагами -it, но это не оптимальный подход.

Для решения проблемы «Ошибка: не удалось подключиться к серверу» вам нужно будет предоставить дополнительную информацию, поскольку проблема, по-видимому, связана с колбой, а не с самим докером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...