Hoja de referencia de Docker
Algunos parámetros de los comandos de docker más frecuentes
Aquí tienes una hoja de referencia de Docker que cubre los comandos más importantes y conceptos, desde la instalación hasta la ejecución de contenedores y la limpieza:

Esta guía es parte de Herramientas para desarrolladores: La guía completa para flujos de trabajo modernos.
Instalación
Para una guía completa sobre cómo instalar Docker en Ubuntu —comparando el repositorio APT oficial, docker.io, Snap, el modo sin privilegios de root (rootless) y la configuración del plugin Compose— consulta Instalar Docker en Ubuntu.
Después de la instalación, añade tu usuario al grupo docker si necesitas ejecutar comandos sin sudo:
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world
La guía de instalación también cubre los compromisos de seguridad de pertenecer al grupo docker y las alternativas sin privilegios de root.
Comandos generales de Docker
Versión e información del sistema
docker version # Muestra las versiones de Docker CLI y del daemon
docker system info # Lista datos sobre tu entorno de Docker
docker help # Ver el índice de ayuda
docker <comando> --help # Ver información de ayuda para un comando específico
Iniciar y cerrar sesión
docker login # Iniciar sesión en Docker Hub
docker logout # Cerrar sesión en Docker Hub
Gestión de imágenes
Listar imágenes
docker images # Listar todas las imágenes
docker images -a # Listar todas las imágenes, incluidas las intermedias
Descargar imágenes
docker pull <nombre-imagen:versión> # Descargar una imagen de Docker Hub
Construir imágenes
docker build -t <nombre-imagen> . # Construir una imagen desde el Dockerfile del directorio actual
docker build -f <ruta-Dockerfile> -t <nombre-imagen> . # Construir una imagen desde un Dockerfile específico
docker build --build-arg foo=bar . # Construir una imagen con argumentos de compilación
docker build --pull . # Descargar versiones actualizadas de las imágenes referenciadas en las instrucciones FROM
docker build --quiet . # Construir una imagen sin mostrar salida
Etiquetar y subir imágenes
docker tag <nombre-imagen-local> <usuario>/<nombre-imagen-preferido>
docker push <usuario>/<nombre-imagen-preferido>
Eliminar imágenes
docker rmi <nombre-imagen> # Eliminar una imagen específica
docker image prune # Eliminar imágenes no utilizadas
docker image prune -a # Eliminar todas las imágenes no utilizadas
Eliminar imágenes huérfanas
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
Quitar etiqueta a una imagen
docker rmi repositorio/nombre-imagen:etiqueta
Gestión de contenedores
Ejecutar contenedores
docker run -itd --name <nombre-contenedor> <nombre-imagen> # Ejecutar un contenedor en modo desasociado
docker run -it -p <puerto-host>:<puerto-docker> <nombre-imagen> # Ejecutar un contenedor con mapeo de puertos
docker run -it --name <nombre-contenedor> <nombre-imagen> # Ejecutar un contenedor de forma interactiva
Listar contenedores
docker ps # Listar contenedores en ejecución
docker ps -a # Listar todos los contenedores
docker ps -s # Listar contenedores en ejecución con uso de CPU y memoria
Iniciar, detener y reiniciar contenedores
docker start <nombre-contenedor> # Iniciar un contenedor detenido
docker stop <nombre-contenedor> # Detener un contenedor en ejecución
docker restart <nombre-contenedor> # Reiniciar un contenedor
Eliminar contenedores
docker rm <nombre-contenedor> # Eliminar un contenedor detenido
docker rm -f <nombre-contenedor> # Eliminar un contenedor de forma forzosa
docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q) # Eliminar todos los contenedores
Eliminar todos los contenedores detenidos
docker container prune
Adjuntarse a contenedores
docker attach <nombre-contenedor> # Adjuntarse a un contenedor en ejecución
docker exec -it <nombre-contenedor> bash # Ejecutar un comando en un contenedor en ejecución de forma interactiva
Inspeccionar contenedores
docker inspect <nombre-contenedor> # Inspeccionar un contenedor
docker logs <nombre-contenedor> # Ver los registros de un contenedor
docker port <nombre-contenedor> # Mostrar los mapeos de puertos de un contenedor
Gestión de redes
docker network ls # Listar todas las redes
docker network create <nombre-red> # Crear una nueva red
docker network rm <nombre-red> # Eliminar una red
Gestión de volúmenes
docker volume ls # Listar todos los volúmenes
docker volume create <nombre-volumen> # Crear un nuevo volumen
docker volume rm <nombre-volumen> # Eliminar un volumen
docker run -v <ruta-host>:<ruta-contenedor> <nombre-imagen> # Montar un volumen
Docker Compose
Para pilas de múltiples contenedores y comandos diarios de Compose, consulta la Hoja de referencia de Docker Compose. Cuando un proyecto de Compose debe iniciarse en el arranque y sobrevivir a los reinicios en un servidor Linux, Ejecutar Docker Compose como un servicio de Linux con systemd cubre archivos de unidad y hábitos operativos.
Comandos básicos
docker-compose up # Iniciar servicios definidos en docker-compose.yml
docker-compose up -d # Iniciar servicios en modo desasociado
docker-compose down # Detener y eliminar servicios
docker-compose ps # Listar servicios en ejecución
docker-compose logs # Ver registros de servicios
docker-compose start # Iniciar servicios
docker-compose stop # Detener servicios
docker-compose pause # Pausar servicios
docker-compose unpause # Reanudar servicios
Comandos de Dockerfile
Construir imagen desde Dockerfile
docker build -t <nombre-imagen> <ruta-Dockerfile> # Construir una imagen desde un Dockerfile
Ejemplo de Dockerfile
FROM <imagen-base>
RUN <comando>
COPY <origen> <destino>
EXPOSE <puerto>
CMD ["<comando>", "<argumento>"]
Seguridad y secretos
Secretos de Docker
docker secret create <nombre-secreto> <archivo> # Crear un secreto
docker secret ls # Listar todos los secretos
docker secret rm <nombre-secreto> # Eliminar un secreto
Seguridad de Docker
- Utiliza los secretos de Docker para gestionar datos sensibles de forma centralizada y transmitirlos de manera segura a los contenedores.
- Los secretos están cifrados durante la transmisión y en reposo en un swarm de Docker.
Limpieza
Eliminar recursos no utilizados
docker system prune # Eliminar datos no utilizados (imágenes, contenedores, redes, volúmenes)
docker image prune # Eliminar imágenes no utilizadas
docker container prune # Eliminar contenedores no utilizados
docker network prune # Eliminar redes no utilizadas
docker volume prune # Eliminar volúmenes no utilizados
Eliminar imágenes sin etiqueta
A veces, después de una compilación grande, aparece una imagen como esta desde el comando docker images:

para eliminar esas imágenes con etiquetas
lo anterior es antiguo e incompatible. El parámetro dangling=true es obsoleto. Usa
```bash
docker system prune
te preguntará:
¡ADVERTENCIA! Esto eliminará:
- todos los contenedores detenidos
- todos los volúmenes no utilizados por al menos un contenedor
- todas las redes no utilizadas por al menos un contenedor
- todas las imágenes huérfanas
Podrías decidir decir Sí a esta advertencia…
Esta hoja de referencia cubre los comandos y conceptos esenciales necesarios para gestionar contenedores, imágenes, redes, volúmenes y más de Docker. Para una inmersión más profunda, consulta las guías y tutoriales detallados disponibles en línea.
Enlaces útiles
- Hoja de referencia de Docker Compose - Comandos más útiles con ejemplos
- Hoja de referencia de Python
- Hoja de referencia de Conda
- Hoja de referencia de Bash
- Hoja de referencia de Ollama
- Hoja de referencia de Kubernetes
- Codificación - decodificación Base64 en Windows, Linux y Mac
- Instalar Portainer en Linux