I have a docker image which runs django. Docker-compose is like this:
services: www: image: my-www-image ports: - "80:80"If I docker exec -ti bash into this container and curl localhost, I get Django-related output, and the docker-compose log notes the GET request.
If I go to the host machine and curl localhost, I get
curl: (56) Recv failure: Connection reset by peer(note this is not a Connection refused, which I would get if I use a random wrong port number)
Adding EXPOSE 80 to the Dockerfile made no difference.
Why can't the host machine connect to the otherwise-working service inside the container?