🚀 Introducción a Docker: Línea de Comandos y Docker Desktop
Docker puede manejarse de dos formas principales: Docker Desktop con interfaz gráfica y la línea de comandos (CLI). Cada enfoque tiene ventajas distintas. Quienes vienen del mundo Linux suelen inclinarse hacia la terminal, pero la interfaz gráfica resulta práctica para tareas rápidas. Lo importante es dominar ambas herramientas para elegir la que mejor se adapte a cada necesidad.
🖥️ Verificación de Instalación y Primeros Comandos
El punto de partida siempre es confirmar que Docker funciona correctamente.
docker version
Permite verificar que la instalación fue exitosa y que la CLI se conecta al motor de Docker. Aunque Docker Desktop actualiza automáticamente la versión, este comando es la señal de que todo está listo para trabajar.
docker info
Proporciona información detallada sobre el entorno de ejecución: memoria, CPU, GPU y otros recursos del sistema.
- Ejemplo: si notas que tus contenedores se ejecutan lento, esta información puede ayudarte a decidir aumentar memoria o CPU en tu máquina.
📚 La Documentación de Docker: Una Aliada Clave
Uno de los mayores puntos fuertes de Docker es su documentación extensa y clara, accesible desde la terminal.
docker help
Muestra la lista de comandos disponibles.
docker comando --help
Explica en detalle los parámetros de un comando específico.
💡 Consejo: incluso sin ejecutar contenedores, explorar la documentación (docker build --help, docker run --help) es una forma muy práctica de descubrir nuevas opciones.
🗂️ Gestión de Imágenes
Las imágenes son la base de todo en Docker.
- En Docker Desktop: pestaña Images, donde se listan las imágenes locales.
- En CLI:
docker images: lista las imágenes en el entorno.
Ejemplo hipotético: si has construido una imagen para tu aplicación web (miapp:1.0), aparecerá aquí y podrás gestionarla fácilmente.
📦 Gestión de Contenedores
Los contenedores son instancias vivas de las imágenes.
- En Docker Desktop: pestaña Containers, donde se listan los contenedores activos o detenidos.
- En CLI:
docker ps: muestra los contenedores activos.
docker ps -a: lista también los contenedores detenidos.
Ejemplo: tras ejecutar docker run -d nginx, verías el contenedor en la lista tanto en Docker Desktop como en la terminal.
🔨 Comandos Fundamentales
Durante cualquier flujo de trabajo en Docker, hay dos comandos que se utilizan constantemente:
docker build
Crea imágenes a partir de un Dockerfile.
- Ejemplo:
docker build -t miapp:1.0 . construye una imagen para la aplicación en el directorio actual.
docker run
Ejecuta contenedores a partir de una imagen.
- Ejemplo:
docker run -p 8080:80 miapp:1.0 levanta un contenedor que expone la app en el puerto 8080.
Ambos comandos incluyen múltiples parámetros que pueden explorarse con --help.
⚖️ Comparación entre Docker Desktop y CLI
La equivalencia entre ambos enfoques es clara: todo lo que se puede hacer con clics en Docker Desktop también se puede lograr con comandos en la terminal.
- Ventajas de la CLI:
- Ideal para automatización y scripts.
- Mayor control y flexibilidad.
- Ventajas de Docker Desktop:
- Interfaz amigable y rápida.
- Útil para visualizar imágenes, contenedores y logs sin escribir comandos largos.
Ejemplo práctico: detener un contenedor puede hacerse con docker stop id en CLI o con un clic en Docker Desktop.
📝 Conclusión y Recomendaciones
Aprender Docker implica moverse con fluidez entre CLI y Docker Desktop, entendiendo que ambos son caras de la misma moneda.
Puntos clave a recordar:
docker version y docker info son la base para validar la instalación y el entorno.
- La documentación integrada es una herramienta insustituible para aprender parámetros y opciones.
docker images y docker ps permiten gestionar imágenes y contenedores fácilmente.
docker build y docker run son el corazón de cualquier flujo de trabajo en Docker.
- Experimentar con ambos enfoques (CLI y GUI) acelera el aprendizaje y amplía la comprensión.
👉 Recomendación final: explora, prueba, rompe y vuelve a construir. La práctica constante con contenedores es la mejor forma de dominar Docker.
¿Quieres que convierta este mismo artículo en una guía más operativa con pasos prácticos, comandos secuenciales y recomendaciones de buenas prácticas para principiantes en Docker?