我有一个在8090端口上运行的Flask服务器
...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
一切正常。
但是我无法通过浏览器连接到服务器,例如使用localhost:8090 /。 我收到此错误
Error: Couldn't connect to server
答案 0 :(得分:0)
正如nauer在评论中所说,问题之一是Dockerfile上没有任何ENTRYPOINT或CMD命令。因此,无论何时启动容器,他都会立即关闭。使用docker run命令,该容器仍处于活动状态,因为您使用-it标志打开了bash,但这不是最佳方法。
对于问题“错误:无法连接到服务器”,您将需要提供更多信息,因为问题似乎出在flask上,而不是码头工人本身。