Cheatsheet de Comandos Docker: Imágenes, Contenedores, Compose y Limpieza
Los comandos de Docker del día a día: construir y gestionar imágenes, ejecutar y depurar contenedores, conectar volúmenes y redes, manejar Docker Compose y liberar disco con seguridad.
1. Imágenes: construir, etiquetar y compartir
Una imagen es la plantilla empaquetada; un contenedor es una instancia en ejecución de esa imagen. Mantén las imágenes pequeñas y etiquetadas por versión, nunca solo con "latest".
| Comando | Qué hace |
|---|---|
docker build -t myapp:1.0 . | Construye una imagen desde el Dockerfile de esta carpeta |
docker images | Lista las imágenes locales y sus tamaños |
docker pull nginx:1.27 | Descarga una imagen desde un registro |
docker tag myapp:1.0 registry.example.com/myapp:1.0 | Añade otro nombre/etiqueta a una imagen |
docker push registry.example.com/myapp:1.0 | Sube la imagen al registro |
docker rmi myapp:1.0 | Elimina una imagen (antes deben irse los contenedores que la usan) |
docker history myapp:1.0 | Muestra las capas que forman la imagen |
2. Contenedores: ejecutar, inspeccionar y depurar
El ciclo diario: arrancar un contenedor en segundo plano, vigilar sus logs, entrar en él cuando algo falla y detenerlo limpiamente.
| Comando | Qué hace |
|---|---|
docker run -d --name web -p 8080:80 nginx | Ejecuta en segundo plano, con nombre, publicando el puerto 8080 del host al 80 del contenedor |
docker ps / docker ps -a | Lista contenedores en ejecución / todos, incluidos los detenidos |
docker logs -f web | Sigue los logs en vivo (Ctrl+C se desconecta, el contenedor sigue) |
docker exec -it web sh | Abre una terminal dentro del contenedor en ejecución |
docker inspect web | Detalle completo en JSON: IP, montajes, variables, estado |
docker stop web / docker start web | Detiene con gracia (SIGTERM y luego SIGKILL) / vuelve a arrancar |
docker rm web | Elimina un contenedor detenido (añade -f para forzar uno en ejecución) |
docker stats | CPU, memoria y red en vivo por contenedor |
3. Volúmenes y redes
Los contenedores son desechables; los datos no. Todo lo que deba sobrevivir al reemplazo de un contenedor va en un volumen, y los servicios se encuentran por nombre dentro de una red compartida.
# Volúmenes: datos persistentes que sobreviven a los contenedores
docker volume create app-data
docker volume ls
docker run -d --name db -v app-data:/var/lib/postgresql/data postgres:16
# Bind mount: una carpeta del host, ideal para desarrollo local
docker run -d --name dev -v $(pwd):/app -w /app node:20 npm run dev
# Redes: los contenedores de una misma red se resuelven por nombre
docker network create backend
docker network connect backend web
docker network ls
docker network inspect backend
4. Docker Compose y limpieza
Compose declara todo el stack en un solo archivo YAML: servicios, puertos, volúmenes y entorno. Un comando construye y arranca todo; los comandos de limpieza del final evitan que Docker se coma tu disco.
# docker-compose.yml (lo esencial)
services:
api:
build: .
ports: ["8000:8000"]
environment: ["DATABASE_URL=postgres://db:5432/app"]
depends_on: [db]
db:
image: postgres:16
volumes: ["db-data:/var/lib/postgresql/data"]
volumes:
db-data:
docker compose up -d # construye y arranca el stack en segundo plano
docker compose ps # estado del stack
docker compose logs -f api # sigue los logs de un servicio
docker compose exec api sh # terminal dentro de un servicio
docker compose down # detiene y elimina (añade -v para borrar también los volúmenes)
# Limpieza: primero mira el uso, luego libera
docker system df
docker container prune # contenedores detenidos
docker image prune # imágenes colgantes (-a elimina todas las no usadas)
docker system prune # contenedores detenidos + redes sin uso + imágenes colgantes
🚀 Ruta de Aprendizaje y Modelos de Negocio Asociados
Contenedores con Docker y Despliegues en Producción
De estos comandos a producción: builds multi-etapa, endurecimiento y patrones de despliegue.
Leer Guía Completa →IA Privada On-Premise
Despliega stacks de IA autoalojados con Docker para clientes que no pueden usar nubes públicas.
Ver Plan de Negocio →¿Necesitas otra hoja de trucos?
Añadimos nuevas guías de referencia cada semana según las peticiones de la comunidad.
Solicitar una Cheatsheet →