No se pudo conectar al puerto 5000 de localhost: se rechazó la conexión con Docker

He creado mi pequeña aplicación Python(flask).El contenedor es heredocker ps

CONTAINER ID        IMAGE                          COMMAND             CREATED             STATUS              PORTS                NAMES4146fd976547        identidock_identidock:latest   "/cmd.sh"           5 minutes ago       Up 5 minutes        9090/tcp, 9191/tcp   agitated_leakey

Si lo intento

curl localhost:5000curl: (7) Failed to connect to localhost port 5000: Connection refused

He comprobado sudo netstat-an / grep-E"5000" unix 3 [] CORRIENTE CONECTADA 25000

No es listeting en 5000.línea yaml con puertos

  ports:   - "5000:5000"

Si ejecuto mi contenedor

docker exec -it agitated_leakey /bin/bashuwsgi@4146fd976547:/app$ netstat -lnbash: netstat: command not found

Mi Dockerfile

RUN pip install Flask==0.10.1 uWSGI==2.0.8WORKDIR /appCOPY app /appCOPY cmd.sh /EXPOSE 9090 9191

Por qué sucede esto?

Un problema alternativo puede ser con el modo. En la sección de publicación tuve que configurar el mode gracias al anfitrión y todo funcionó:

docker service create --name registry --publish published=5000,target=5000,mode=host registry:2

Desde la salida de docker ps parece que su puerto no ha sido expuesto.

$ docker run -d -p 5000:5000 flask-sample-one

Ejecute su contenedor asignando el puerto y, si aún enfrenta el mismo problema, ssh al contenedor y use el siguiente comando.

netstat -lntp | grep :5000

Parece que Netstat no está instalado en el contenedor. Puedes ejecutar un yum install netstat para instalar y comprobar.

Este guía le ayudará a verificar. Comprobar docker ps salida al final.

puede ssh al contenedor docker y netstat para verificar si el puerto está escuchando. ¿Estaba expuesto el puerto docker 5000 ?

@Dextro67 Echa un vistazo a mi edición, por favor.