Trying to connect to a dockerized Flask app fails with error 104, 'Connection reset by peer' using this minimal example:
app.py:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Dockerfile:
FROM python:alpine
RUN pip install flask
COPY . /src/
EXPOSE 5000
ENTRYPOINT ["python", "/src/app.py"]
docker-compose.yml:
…
test:
build: .
ports:
- 127.0.0.1:5000:5000
Flask app seems to be running as expected:
$ docker logs test
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Trying to connect from outside fails:
$ http http://127.0.0.1:5000/
http: error: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer')) while doing GET request to URL: http://127.0.0.1:5000/
Any ideas, why I can't get to see "Hello World!" here?
gunicorn --bind 0.0.0.0:5000 app:app– Martin Thoma Apr 15 '19 at 07:18flask run, use--host=0.0.0.0. Or in the Dockerfile:CMD ["flask", "run", "--host=0.0.0.0"]– sebas Sep 07 '19 at 10:46