Comandos Docker es una guía práctica para trabajar con contenedores sin perderte entre opciones sueltas. Docker tiene muchos subcomandos, pero en el día a día casi siempre repites los mismos: listar, crear, iniciar, detener, inspeccionar, ver logs, gestionar imágenes, redes, volúmenes y Compose.
El objetivo no es memorizar toda la CLI, sino entender qué comando usar en cada situación y qué precauciones tomar antes de borrar recursos o tocar un entorno compartido. Así puedes administrar contenedores de forma más segura y reproducible.
En esta lección vas a ver los comandos Docker más importantes organizados por tarea, con ejemplos reales y advertencias donde corresponde. Está pensada para desarrollo, laboratorios y primeros entornos de administración.
👉 Y recuerda, si quieres aprender más de Linux, pincha en este curso de Linux gratis.
🐳 Si quieres aprender más de Docker, pincha en este curso de Docker gratis.
Comandos Docker esenciales
Antes de entrar por categorías, conviene quedarse con una idea: Docker separa imágenes, contenedores, redes y volúmenes. Una imagen es la plantilla; un contenedor es una ejecución de esa imagen; las redes conectan servicios; los volúmenes guardan datos persistentes.
| Tarea | Comando base | Para qué sirve |
|---|---|---|
| Ver versión e información | docker version / docker info | Comprobar cliente, servidor, storage driver y configuración general. |
| Listar contenedores | docker ps | Ver contenedores en ejecución o todos los contenedores con la opción adecuada. |
| Crear y ejecutar | docker run | Arrancar un contenedor desde una imagen. |
| Ver logs | docker logs | Consultar la salida generada por un contenedor. |
| Inspeccionar | docker inspect | Ver configuración detallada en formato estructurado. |
| Gestionar Compose | docker compose | Levantar stacks definidos en un archivo Compose. |
docker version
docker info
docker ps
docker ps -aEstos comandos no modifican recursos importantes. Sirven para orientarte: saber si Docker está funcionando, qué contenedores existen y cuál es el estado inicial antes de actuar.
Contenedores: crear, detener y revisar
La gestión de contenedores es el núcleo del trabajo diario. Aquí entran comandos para arrancar servicios, detenerlos, reiniciarlos y revisar su estado.
Crear y ejecutar un contenedor
docker run --name web-demo -d -p 8080:80 nginx:stable
docker psEste ejemplo arranca un contenedor Nginx en segundo plano, le da un nombre y publica el puerto 80 del contenedor como 8080 en el host. Usar un tag estable y explícito evita depender de una etiqueta flotante sin control.
Detener, iniciar y reiniciar
docker stop web-demo
docker start web-demo
docker restart web-demoEstos comandos cambian el estado del contenedor, pero no eliminan la imagen ni los datos persistidos en volúmenes. Son útiles para pruebas y para aplicar cambios cuando el contenedor ya existe.
Ver logs y entrar al contenedor
docker logs web-demo
docker logs -f web-demo
docker exec -it web-demo shLos logs ayudan a entender si la aplicación arrancó bien. El acceso con exec sirve para depurar desde dentro del contenedor, aunque no debería convertirse en una forma permanente de configurar aplicaciones. Lo reproducible debe quedar en Dockerfile, Compose o variables de entorno.
Imágenes Docker
Las imágenes son la base desde la que arrancan los contenedores. Puedes descargarlas, construirlas, etiquetarlas y eliminarlas cuando ya no sean necesarias.
docker image ls
docker pull nginx:stable
docker build -t mi-app:1.0 .
docker image inspect mi-app:1.0Para proyectos propios, es recomendable usar etiquetas claras como versión, entorno o commit. Evita basar procesos importantes solo en latest, porque puede cambiar con el tiempo y dificultar la reproducción de un problema.
Si quieres profundizar en este tema, puedes revisar también la lección de imágenes de Docker.
Redes y volúmenes
Muchos problemas con contenedores vienen de no separar bien conectividad y persistencia. Las redes permiten comunicar servicios; los volúmenes permiten conservar datos aunque un contenedor se borre.
Comandos de redes
docker network ls
docker network create red_app
docker network inspect red_app
docker network rm red_appCrea redes por proyecto cuando necesites aislar servicios. En Docker Compose esto suele quedar definido en el archivo del proyecto, pero conocer los comandos manuales ayuda a diagnosticar problemas.
Comandos de volúmenes
docker volume ls
docker volume create datos_app
docker volume inspect datos_app
docker volume rm datos_appPrecaución: no elimines volúmenes sin comprobar qué datos contienen. Un volumen puede guardar bases de datos, uploads, configuraciones o información difícil de recuperar si no tienes copia de seguridad.
Para ampliar estos dos bloques, tienes las guías de redes en Docker y volúmenes en Docker.
Docker Compose en el día a día
Cuando una aplicación necesita varios servicios, Compose es más cómodo que lanzar contenedores uno por uno. Permite declarar servicios, redes, volúmenes, variables y puertos en un archivo versionable.
docker compose up -d
docker compose ps
docker compose logs -f
docker compose downCon estos comandos levantas el stack, revisas el estado, miras logs y lo detienes. Antes de usar down en un entorno compartido, revisa el archivo Compose y confirma si se usan volúmenes nombrados o datos importantes.
docker compose config
docker compose pull
docker compose up -d --builddocker compose config valida y muestra la configuración final interpretada por Compose. Es útil para detectar errores de YAML, variables no expandidas o configuraciones que no quedaron como esperabas.
Limpieza y mantenimiento seguro
Docker puede acumular contenedores detenidos, imágenes antiguas, redes sin uso y caché de construcción. Limpiar es útil, pero hay que hacerlo con criterio para no borrar recursos que todavía necesitas.
docker system df
docker container prune
docker image prune
docker network pruneAdvertencia: los comandos prune eliminan recursos no utilizados según el tipo de recurso. Antes de ejecutarlos en una máquina de trabajo o producción, revisa qué proyectos están detenidos, qué imágenes necesitas conservar y si hay volúmenes con datos importantes.
docker system prune
docker system prune -adocker system prune puede ser útil para liberar espacio, pero docker system prune -a es más agresivo porque también puede eliminar imágenes no usadas por contenedores actuales. No lo uses por rutina si no tienes claro el impacto.
Errores comunes al usar comandos Docker
- Ejecutar comandos de limpieza sin revisar: primero usa docker system df y lista recursos antes de borrar.
- Confundir imagen y contenedor: borrar un contenedor no borra necesariamente la imagen, y borrar una imagen no elimina un volumen con datos.
- Depurar cambios dentro del contenedor: puede servir en una emergencia, pero los cambios reproducibles deben vivir en Dockerfile o Compose.
- Publicar puertos de más: no todos los servicios necesitan estar accesibles desde el host.
- Usar latest sin control: para entornos importantes, usa tags explícitos y una estrategia clara de actualización.
Una buena práctica es trabajar siempre con nombres claros. Si nombras contenedores, redes y volúmenes por proyecto, luego es más fácil entender qué pertenece a cada aplicación y evitar borrados accidentales.
Buenas prácticas con comandos Docker
Usa primero comandos de lectura: ps, logs, inspect, image ls, volume ls, network ls y system df. Después decide si necesitas arrancar, detener, reconstruir o limpiar. Este orden reduce errores y te da contexto antes de modificar el sistema.
En equipos o servidores compartidos, documenta los comandos repetibles en scripts, Makefiles o archivos Compose. Así evitas depender de pasos manuales recordados de memoria y puedes revisar los cambios antes de aplicarlos.
Por último, trata los comandos Docker destructivos como operaciones sensibles. Detener un contenedor puede cortar un servicio; borrar una imagen puede obligar a descargarla de nuevo; borrar un volumen puede implicar pérdida de datos.
Lecciones relacionadas del curso Docker
- Guía completa de Docker
- Contenedor Docker: guía práctica
- Imágenes de Docker
- Redes en Docker
- Volúmenes en Docker
- Qué es Docker Compose
Documentación oficial y recursos
- Referencia oficial de la CLI de Docker
- Comandos de contenedores en Docker
- Comandos de imágenes en Docker
- Referencia oficial de Docker Compose
Con esta base ya puedes moverte por Docker con más seguridad: primero observas, luego actúas y, cuando el comando pueda borrar recursos, revisas el impacto antes de confirmar. Ese hábito marca la diferencia entre probar Docker y administrarlo con criterio.

