Your container runs but the port is unreachable: the four places it breaks
A running container with an unreachable published port has four separate causes, and they produce nearly identical symptoms in a browser. Here is the diagnosis order using docker port, ss on the host and inside the namespace, and iptables -t nat -L DOCKER — and why ufw deny lies to you.
Read more →