Diferencia entre revisiones de «Comandos frecuentes Docker»
(No se muestran 3 ediciones intermedias del mismo usuario) | |||
Línea 9: | Línea 9: | ||
docker exec silly_sammet cat /etc/hosts | docker exec silly_sammet cat /etc/hosts | ||
− | -- Ejecutar en modo de- | + | -- Entrar al shell en un contenedor ya ejecutándoselo |
+ | docker exec –it docker.test /bin/bash | ||
+ | |||
+ | -- Para entrar al shell de un contenedor ya ejecutándose y que tome el nombre automáticamente basado en un text del nombre de la imagen. Por ejemplo tengo una imagen que se llama Kali.distro pero la reinicio y me da un nombre de contenedor diferente cada vez, con el siguiente comando, ya no tengo que especificar el nombre, el comando se encarga de tomar el nombre del contenedor que se encuentre en ejecución. | ||
+ | |||
+ | docker exec -it $(docker container ls | grep -i kali | awk '{print $NF}') /bin/bash | ||
+ | |||
+ | -- Ejecutar en modo de-attached o en el background | ||
docker run -d kodecloud/simple-webapp | docker run -d kodecloud/simple-webapp | ||
Línea 29: | Línea 36: | ||
docker run -p 80:8080 flaskimage | docker run -p 80:8080 flaskimage | ||
+ | -- Montar un directorio del host al contenedor por ejemplo tenemos una carpeta con código en /applocal y queremos que la comparta con el contenedor en /appcontenedor | ||
+ | docker run -ti -v applocal:/home/lmoreno/appcontenedor | ||
-- Detener un contenedor | -- Detener un contenedor | ||
docker stop nginx | docker stop nginx | ||
se puede usar el container ID o el nombre | se puede usar el container ID o el nombre | ||
+ | |||
+ | -- Detenr un contenedor sin esperar, por default docker espera 10 segundos antes de detener el contenedor con la opción -t puedes establecer el tiempo de espera para disminuir o aumentar según la necesidad, el siguiente comando no espera para detener el contenedor | ||
+ | docker stop nginx -t 0 | ||
-- Eliminar un contenedor | -- Eliminar un contenedor |
Revisión actual del 20:38 21 feb 2021
Comandos frecuentes Docker Estas listas son un documento vivo que va creciendo con el tiempo
-- Ejecutar un contenedor
docker run nginx
donde nginx es el nombre del contenedor
-- Ejecutar un comando del contenedor
docker exec silly_sammet cat /etc/hosts
-- Entrar al shell en un contenedor ya ejecutándoselo
docker exec –it docker.test /bin/bash
-- Para entrar al shell de un contenedor ya ejecutándose y que tome el nombre automáticamente basado en un text del nombre de la imagen. Por ejemplo tengo una imagen que se llama Kali.distro pero la reinicio y me da un nombre de contenedor diferente cada vez, con el siguiente comando, ya no tengo que especificar el nombre, el comando se encarga de tomar el nombre del contenedor que se encuentre en ejecución.
docker exec -it $(docker container ls | grep -i kali | awk '{print $NF}') /bin/bash
-- Ejecutar en modo de-attached o en el background
docker run -d kodecloud/simple-webapp
-- Atacharse a un contenedor que se inicio con la opción -d detached
docker attach silly_sammet
o también
docker attach a09455
-- Ver imagenes en ejecución, container ID, nombre de la imagen, comando, etc.
docker ps
-- Ver el historial de todos los contenedores, incluso los que están detenidos
docker ps -a
-- Exponer puerto de docker en el host
docker run -p <puertoHost>:<puertoContenedor> nombreImagen
Ejemplo exponer el puerto 8080 del contenedor en el puerto 80 del host:
docker run -p 80:8080 flaskimage
-- Montar un directorio del host al contenedor por ejemplo tenemos una carpeta con código en /applocal y queremos que la comparta con el contenedor en /appcontenedor
docker run -ti -v applocal:/home/lmoreno/appcontenedor
-- Detener un contenedor
docker stop nginx
se puede usar el container ID o el nombre
-- Detenr un contenedor sin esperar, por default docker espera 10 segundos antes de detener el contenedor con la opción -t puedes establecer el tiempo de espera para disminuir o aumentar según la necesidad, el siguiente comando no espera para detener el contenedor
docker stop nginx -t 0
-- Eliminar un contenedor
docker rm silly_sammet
-- Ver imagenes en disco
docker images
-- Eliminar imágenes
docker rmi nginx
-- Formar el eliminado de la imagen
docker rmi -f nginx
-- Descargar el contenedor de Ubuntu sin ejecutar
docker pull ubuntu/18.04
-- ejecutar bash de un docker
docker run -ti ubuntu /bin/bash
i = interactive
t = assign a tty
-- Guardar cambios al contenedor --
-- Primero se debe entrar al contenedor, hacer los cambios y salir con exit, posteriormente ejecutar el comando
-- Obtener el ID del último contenedor (l = latest)
docker ps -l
-- También puede ser all que muestra todos los contenedores, incluso los detenidos (a = all)
docker ps -a
-- Aplicar cambios al contenedor
docker commit <id-delContenedor> nombrecontenedor
Ejemplo:
docker commit 0e198 ubuntuconnmap
-- Docker bridge
docker network create --subnet 192.168.15.0/24 --gateway 192.168.15.1 homenet docker run -it --net homenet --ip 192.168.15.100 kaliman