Ejecuta un contenedor de imagen hello-world, si no exite la descarga y muestra un mensaje y finaliza.
Muestra contenedores en ejecucion.
Muestra todos los contrnedores, en ejecucion ó finalizados. Todos los ejecutados quedan en la maquina. Borrarlos con docker rm - f....
Muestra imagenes de contenedores que tenemos descargadas.
Busca en docker hub todas las imagenes que existen de centos.
# docker pull [nombre de imagen]
Descarga la imagen que elegimos en el docker search.
# docker run -ti debian /bin/bash
Ejecuta un contenedor de imagen debian, queda interactivo y abre un bash. Queda ejecutando un terminal.
Finaliza el contenedor interactivo que deje ejecutando y devuelve el prompt a la maquina host.
Deja el contenedor ejecutando en segundo plano y devuelve el prompt a la maquina host.
# docker run -it -d debian /bin/bash
Ejecuta el contenedor en background.
# docker attach [container-id]
Para conectarme a un container que esta ejecutando en background.
Crea el contenedor pero no lo ejecuta.
# docker stats [container-id]
Permite ver recursos que consume el contenedor, cpu, mem, io de red, io de bloques, etc. En %
# docker top [container-id]
Muestra los procesos, pid, tty, etc, que esta ejecutando ese contenedor.
# docker logs -f [container-id]
Veo logs del contenedor.
# docker rm [container-id]
Elimina un contenedor que no esta en ejecucion.
# docker rm -f [container-id]
Elimina un contenedor aunque esté ejecutando.
# docker container ls -a -q
Lista todos los ID de los contenedores.
# docker rm $(docker container ls -a -q)
Elimina todos los containers.
# docker stop [container-id]
Para un contenedor.
# docker start [container-id]
Inicia un contenedor parado. Veo el id con docker ps -a
# docker pause [container-id]
Pausa el contenedor.
# docker unpause [container-id]
Quita de la pausa al contenedor.
# docker run -it --name debiacito debian /bin/bash
Ejecuta un contenedor debian con nombre.
# docker inspect [container-id]
Ver detalles especificos del contenedor: memoria, ip, gateway, etc.
# docker inspect [container-id] | grep Memory
Vemos la memoria que tiene ese contenedor. El 0 indica que no tiene limite.
# docker run -d -it -m 128M debian /bin/bash
Ejecuta un debian con limite de memoria 128 Mb.
# docker update -m 256 [container-id]
Modifica el limite de memoria de un contenedor en ejecución a 256 Mb
# docker run -it -d --cpu-shares 1024 debian /bin/bash
# docker run -it -d --cpu-shares 512 debian /bin/bash
# docker run -it -d --cpu-shares 512 debian /bin/bash
Ejecuta 3 contenedores debian con limite de CPU, uno usa el 50% y los otros dos 25% c/u.
# docker ps | awk '{ print $1 }' | grep -v CONTAINER | xargs docker inspect | grep CpuShares
Con esto veo los cpu compartidos de todas los contenedores en ejecución.
# docker update --cpu-shares 1024 [container-id]
Modifica el limite de cpu compartido de un contenedor en ejecución.
# docker run -it -p 8181:80 debian /bin/bash
Expone el puerto host 8181 al puerto 80 del contenedor. Es una especie de port forwarding.
# docker run -it -e VARIABLE=valor debian /bin/bash
Asi definimos una variable de entorno dentro.
# docker run -it -v /nombreVolumen debian /bin/bash
Crea un volumen en /nombreVolumen de la maquina host para compartir con el contenedor. Es una especie de NFS.
# docker run -it -v /volumenEnElHost:/VolumenEnElContainer debian /bin/bash
Especifica la ruta en host y no queda aleatoria como comando anterior.
# docker inspect -f {{.Mounts}} [container-id]
Ver donde mapea el volumen en el host y en el container.
# docker create -v /Users/hernantirado/Desktop/VolumenEnElHost:/volenelcontainer --name debiancompartido debian
# docker run -ti --volumes-from debiancompartido --name debian01 debian
# docker run -ti --volumes-from debiancompartido --name debian02 debian
Creamos 2 contenedores llamados debian01 y debian02 que usan el mismo volumen de /volCompartidoParaVarios
# docker run -it --restart=always --name debiancito debian:01
Si reinicio el host iniciara el contenedor tambien.
|
No hay comentarios:
Publicar un comentario