Hoja de Referencia de Comandos de Docker
Docker es un motor de contenedores de aplicaciones de código abierto que permite a los desarrolladores empaquetar sus aplicaciones y dependencias en una imagen portátil, que luego se puede lanzar en cualquier máquina Linux o Windows popular, y también se puede lograr la virtualización. Los contenedores utilizan un mecanismo de sandbox en su totalidad y no tienen interfaces entre sí.
Uso General
Iniciar un contenedor en segundo plano
docker run -d jenkinsIniciar un contenedor interactivo
docker run -it ubuntu bashIniciar un contenedor que se elimina automáticamente al detenerse
docker run --rm ubuntu bash Iniciar un contenedor con mapeo de puertos
docker run -p 80:80 -d nginx Iniciar un contenedor con nombre
docker run --name mydb redis Iniciar un contenedor detenido
docker start mydb Detener un contenedor
docker stop mydbIniciar un contenedor y añadir metadatos
docker run -d \ label=traefik.backend=jenkins jenkinsConstruir Imágenes (Build Images)
Construir una imagen desde un Dockerfile en el directorio actual
docker build --tag myimage . Forzar la reconstrucción de una imagen
docker build --no-cache . Aceptar cambios de un contenedor a una imagen (Commit)
docker commit c7337 myimage Eliminar todas las imágenes no utilizadas
docker rmi $(docker images -q -f "dangling=true")Depuración (Debug)
Iniciar sesión en un contenedor en ejecución
docker exec -it c7337 dockerMostrar registros de actividad de un contenedor daemon en ejecución
docker logs -f c7337Mostrar los puertos expuestos de un contenedor
docker port c7337Volúmenes (Volumes)
Crear un volumen local
docker volume create --name myvol Montar un volumen al iniciar un contenedor
docker run -v myvol:/data redisDestruir un volumen
docker volume rm myvol Listar todos los volúmenes
docker volume lsCrear una red local
docker network create mynet Conectar un contenedor a una red al iniciar
docker run -d --net mynet redisConectar un contenedor a una red específica
docker network connect mynet c7337 Desconectar un contenedor de una red
docker network disconnect mynet c7337Gestión de Contenedores
Listar contenedores en ejecución
docker psListar todos los contenedores (incluyendo ejecución y detenidos)
docker ps -aInspeccionar metadatos de un contenedor
docker inspect c7337Listar todas las imágenes disponibles localmente
docker imagesEliminar todos los contenedores detenidos
docker rm $(docker ps --filter status=exited -q) Listar todos los contenedores con una etiqueta específica
docker ps --filter label=traefik.backendConsultar un contenedor en ejecución con metadatos específicos
docker inspect -f '{{ .NetworkSettings.IPAddress }}' c7337Descripción
Nombre de la Imagen
redis, jenkins, nginxNombre del Contenedor o ID de Commit
mydb # nombre del contenedor
c7337 # ID de commit