puertos
Puertos
Imagen y contenedor de prueba inical
# descarga imagen nginx para ejemplo hub.docker.com/_/nginx
docker image pull nginx
# ejecutar contenedor de prueba con imagen nginx
docker container run -d nginx
449b68085f6c96c9a3f9a55ea5e9f3a495e311f486e323fdcd6092311a902f56
# listar contenedor creado
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
449b68085f6c nginx "nginx -g 'daemon of…" 2 minutes ago Up 2 minutes 80/tcp
f93bf0ccdc60 ubuntu-tools "/bin/bash" 37 minutes ago Up 35 minutes
# probar mostrar info del index
curl localhost
# servicio de nginx se expone dentro pero no fuera del contenedor
curl: (7) Failed to connect to localhost port 80: Conexión rehusada
Exponer puerto de contenedor a host local
# detener contenedores de pruebas anteriores
docker stop $(docker ps -q)
# ejecutar nuevo contenedor de prueba con imagen nginx
# uso flag -p (publicar puerto host local), no -P (mayus, aleatoriamente)
# -p sistema:contenedor
docker container run -d -p 8080:80 nginx
66dd98b03d3fd28b443d1ec611d981fd18606f60c01045fc52fdd2b7406be7f7
# probar mostrar info del index
curl localhost:8080
# servicio de nginx ahora se expone fuera del contenedor
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
...
</body>
</html>
Ver puertos expueto de contenedor
# listar contenedores creados en ejecucion
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
66dd98b03d3f nginx "nginx -g 'daemon of…" 8 minutes ago Up 8 minutes 0.0.0.0:8080->80/tcp
# uso comando port
docker container port 66dd98b03d3f
# salida
80/tcp -> 0.0.0.0:8080
Asignar puerto aleatoriemante de contenedor a host local
```shell
ejecutar nuevo contenedor de prueba con imagen nginx
uso flag -P (mayus, aleatoriamente)
docker container run -d -P nginx
105a2e895101ab51ccad7f6c3849d0a670b491ac90eb0567b01a55fc769cbb71
listar contenedores creados en ejecucion
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
105a2e895101 nginx "nginx -g 'daemon of…" 18 seconds ago Up 14 seconds 0.0.0.0:32768->80/tcp
66dd98b03d3f nginx "nginx -g 'daemon of…" 17 minutes ago Up 17 minutes 0.0.0.0:8080->80/tcp
probar mostrar info del index
curl localhost:32768
servicio de nginx ahora se expone fuera del contenedor con el puerto aleatorio
<!DOCTYPE html>
Welcome to nginx!
body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; } </head>
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
... </body> </html>
- Nota multiples servicios a exponer puertos
```shell
# concatenar flags -p valor sistema:contenedor
docker container run -d -p 8080:80 -p 3001:3000 -p 2222:2222 nginx
Última actualización
¿Te fue útil?