This is a draft cheat sheet. It is a work in progress and is not finished yet.
imagenes
|
Descargar la imagen docker pull nombre_imagen:tag
|
Crear un Dockerfile nano Dockerfile
|
Creación imagen punto (.) para llamar al Dockerfile docker build -t nombre_imagen_result . |
Historial docker history -H nombre_imagen:tag |
Eliminar imagen docker rm -fv nombre_imagen:tag
|
Buscar imagenes docker images | grep nombre_imagen:tag
|
Estructura Dockerfile FROM imagen:tag
LABEL descripcion RUN comando_install -y WORKDIR dir_trabajo
USER usuario_ejecuta_tarea COPY carpeta_archivo ruta/... ADD archivo_url ruta/...
ENV variable contenido
VOLUME ruta
EXPOSE puerto CMD comando_ejecutar |
Estructura dockerignore
archivo_ignorar
|
Eliminar imagenes
docker rmi imagen:tag
|
Eliminar imagenes dangling
docker images -f dangling=true -q | xargs docker rmi
|
Volúmenes
Volumen persistente (datos bd) docker run -d parametros -v /ruta_loc:/ruta_cont imagen |
Volumen anónimos (datos bd) docker run -d parametros -v /ruta_loc imagen |
Volumen docker docker volume ls |
Eliminar volumen docker (v) docker rm -fv imagen |
Volumen nombrado docker volume create nombre Asignar volumen docker run -d -v nombre:/ruta imagen |
Dangling volumes docker volume ls -f dangling=true
|
Registry
Creacion docker run -d -p 5000:5000 --name registry -v $PWD/data:/var/lib/registry registry:2 |
Subir imagenes docker tag nombre_imagen:tag localhost:5000/nombre_imagen:tag |
Subir imagen al registry docker push localhost:5000/nombre_imagen:tag |
Bajar imagen al registry docker pull localhost:5000/nombre_imagen:tag |
Compartir imagenes desde una red
vi /lib/systemd/system/docker.service
ExcecStart=/usr/bin/dockerd --insecure-registry IP:5000
sudo systemctl daemon-reload
docker stop registry
sudo systemctl retart docker
docker start registry docker pull localhost:5000/nombre_imagen:tag |
|
|
Contenedores
Listar un contenedor docker ps docker ps -a docker ps -q docker ps -l |
Crear un contenedor docker run --help|less docker run -d imagen (-d)segundo_plano docker run -d -p ploc:pcont imagen (-p)puerto
|
Borrar un contenedor docker rm -f nombre |
Renombrar un contenedor docker rename nombre_actual nombre_nuevo |
Detener un contenedor docker stop nombre/id |
Iniciar un contenedor docker start nombre/id |
Reiniciar un contenedor docker restart nombre/id |
Shell un contenedor docker exec -u root -ti nombre/id bash |
Eliminar todos los contenedores docker ps -q | xargs docker rm -f |
Variables de entorno docker run -e "prueba1=1234" imagen |
Inspeccionar contenedor docker inspect imagen |
Logs en contenedor docker logs -f imagen |
Recursos en contenedor docker stats imagen |
Limitar recursos en contenedor docker run -d -m "500mb/gb " imagen |
Cuantas CPU se tienen grep "model name" /proc/cpuinfo | wc -l |
Saber CPU en contenedor docker run --help | grep cpu |
Restringir CPU en contenedor docker run -d -m "1gb" --cpuset-cpus 0-1 imagen |
Enviar archivos en contenedor docker cp archivo imagen:/ruta |
Extraer archivos en contenedor docker cp imagen:/ruta /ruta_local |
Docker commit docker commit contenedor imagen_resultante:tag |
Sobreescibir el CMD docker run -dti imagen:tag cmd_argumento |
Destruir contenedores auto ejecución temporal (--rm) docker run --rm -ti imagen:tag |
Document root var/lib/docker |
|
|
Docker Network
Consultar la red docker docker network ls Red por defecto docker network ls | grep bridge |
red docker definida docker network create nombre_red (--help)
|
Inspeccionar la red docker network inspect nombre_red |
Red docker run --network nombre_red_a_conectar -d --name test imagen
|
Ping docker exec ontenedor bash -c "pin IP_cont/nombre_cont"
|
Conectar diferentes redes docker network connect nombre_red1 nomb_cont2
|
Desconectar diferentes redes docker network disconnect nombre_red1 nomb_cont2
|
Eliminar redes docker network rm nombre_red
|
Asignar ip a contenedor docker network create --subnet IP/24 --gateway IP -d bridge nombre_red
|
Asignar ip a contenedor docker run --network nombre_red -d --name cont1 -ti centos
|
Asignar ip a contenedor docker run --network nombre_red --ip IP -d --name cont1 -ti imagen
|
La red de host docker run --network host -d --name cont -ti imagen
|
Red None docker run --network none -d --name cont -ti imagen
|
Compose
Ejecución docker-compose |
Ejecutar contenedor docker-compose up -d docker-compose -f archivo.yml up -d |
Eliminar contenedor docker-compose down |
Imagenes compose docker-compose build |
Personalizar nombre proyecto compose docker-compose -p nombre -f nombre.yml up -d |
Nombre distinto docker-compose.yml docker-compose -f nombre_archivo.yml |
logs compose docker-compose logs -f |
|