¿Cómo comprobar qué puerto de un contenedor Docker está expuesto en el host? Usa docker port para ver la correspondencia entre el puerto interno y la dirección publicada, sin revisar toda la configuración del contenedor.
Consultar los puertos publicados
Indica el nombre o el identificador del contenedor y, si quieres, el puerto interno:
docker port NOMBRE_O_ID
Para consultar solo el puerto HTTP del ejemplo:
docker port NOMBRE_O_ID 80/tcp
Una salida como 127.0.0.1:18081 indica que el puerto 80/tcp del contenedor se publica en el puerto 18081 del host y solo escucha en la dirección local. Si aparece 0.0.0.0:18081, el puerto queda publicado en todas las interfaces IPv4 del host.
Localizar primero el contenedor
Si no recuerdas el nombre, lista los contenedores en ejecución:
docker ps --format 'table {{.ID}}\t{{.Names}}\t{{.Ports}}'
La columna PORTS ofrece un resumen rápido. Usa después docker port cuando necesites confirmar el mapeo de un puerto concreto.
Nota
Un contenedor puede tener un puerto declarado en la imagen sin que esté publicado en el host. Si docker port no devuelve nada, revisa cómo se creó el contenedor antes de asumir que el servicio es accesible desde fuera.
