Curso
¿Estás cansado de escribir docker ps, docker logs y docker stats cincuenta veces al día solo para comprobar qué están haciendo tus contenedores?
Supongamos que gestionas cinco contenedores y algo se rompe. Este es tu flujo de trabajo: comprueba los contenedores en ejecución, busca el adecuado con grep, copia el ID, comprueba los registros, desplázate por la salida y comprueba el uso de la CPU con otro comando. Para cuando te das cuenta de lo que está pasando, ya has ejecutado una docena de comandos y has perdido un buen rato.
Esto ocurre porque la CLI de Docker no se diseñó para la supervisión constante y las acciones rápidas que exige el trabajo de desarrollo real.
Lazydocker te ofrece una interfaz de usuario de terminal que muestra todo a la vez: contenedores en ejecución, registros, estadísticas y estado del servicio en una sola pantalla. Puedes iniciar, detener y reiniciar contenedores con solo pulsar una tecla, seguir los registros en tiempo real e identificar los recursos que consumen más sin necesidad de memorizar comandos.
En este artículo, te guiaré a través de la instalación de lazydocker, la navegación por su interfaz y su uso para acelerar tus flujos de trabajo diarios con Docker.
Si eres nuevo en Docker, empieza por lo básico. Nuestra curso Introducción a Dockerte ayudará a dominar los fundamentos en solo unas horas.
¿Qué es Lazydocker?
Lazydocker es una interfaz de usuario de terminal (TUI) que te ofrece una forma visual de gestionar contenedores Docker sin salir de la línea de comandos.
Se encuentra en la parte superior de la API de Docker, lo que significa que utiliza los mismos comandos que ejecutarías manualmente, solo que envueltos en una interfaz que te muestra todo a la vez. Obtienes actualizaciones en tiempo real sobre el estado de los contenedores, los registros, las estadísticas y el uso de recursos en una sola ventana.
Las TUI como lazydocker son populares para la gestión de contenedores porque combinan lo mejor de las aplicaciones GUI y el trabajo CLI puro. Mantienes la velocidad y el control del teclado del terminal, pero añades una organización visual que facilita el análisis de sistemas complejos. No es necesario cambiar de contexto a Docker Desktop ni memorizar los indicadores de cada comando.
El problema que resuelve lazydocker
La CLI de Docker te obliga a recopilar información de varios comandos. Aquí hay algunos:
-
¿Quieres ver qué contenedores están en funcionamiento?
docker ps -
¿Necesitas registros?
docker logs -
¿Comprobar el uso de la CPU?
docker stats
Cada dato requiere un comando independiente, y tienes que estar constantemente copiando ID de contenedores o buscando en la salida para encontrar lo que necesitas.
Lazydocker resuelve este problema reuniendo todo en un solo lugar. Puedes ver todos tus contenedores, sus registros, el uso de recursos y las acciones disponibles en una sola pantalla. Se navega por la interfaz con las teclas de flecha. Puedes iniciar o detener un contenedor con solo pulsar una tecla, en lugar de escribir un comando completo.
La interfaz también hace que Docker sea más seguro para el uso diario. Cuando estás a punto de eliminar un contenedor o recortar imágenes, lazydocker te muestra exactamente lo que vas a borrar antes de que lo confirmes.
Cómo instalar Lazydocker
Antes de poder utilizar lazydocker, debes instalarlo en tu sistema.
El proceso de instalación es rápido y funciona en macOS, Linux y Windows. Tienes varias opciones dependiendo de tu configuración y del gestor de paquetes que prefieras.
Métodos de instalación para macOS, Linux y Windows
Estas son las principales formas de instalar lazydocker:
Homebrew (macOS y Linux):
brew install lazydocker
Este es el gestor de paquetes que utilizas en macOS. Este es el resultado:

Instalación de Lazydocker en macOS
Scoop (Windows):
scoop install lazydocker
Chocolatey (Windows):
choco install lazydocker
asdf-vm (gestor de versiones multiplataforma):
asdf plugin add lazydocker
asdf install lazydocker latest
asdf global lazydocker latest
Instala Go (si ya lo tienes instalado):
go install github.com/jesseduffield/lazydocker@latest
Para la instalación manual, debes descargar la última versión para tu plataforma desde la página de versiones de GitHub, extraer el archivo y mover el binario a un directorio en tu PATH.
Para que lazydocker funcione, es necesario que tengas Docker instalado y en ejecución. Lazydocker se conecta al demonio Docker a través del socket Docker, por lo que si Docker no está en funcionamiento, lazydocker no puede iniciarse.
Una vez instalado, comprueba que funciona ejecutando « lazydocker » en tu terminal; la interfaz debería iniciarse y conectarse a tu demonio Docker.

Iniciar Lazydocker
Introducción a la interfaz Lazydocker
Al iniciar lazydocker, aparecerá una interfaz con pantalla dividida que muestra tu entorno Docker en tiempo real.
La interfaz se divide en dos áreas principales: una barra lateral izquierda para la navegación y un panel derecho que muestra detalles sobre lo que hayas seleccionado. Todo se actualiza automáticamente a medida que cambia tu entorno Docker, sin necesidad de actualizar manualmente.

Interfaz Lazydocker
Diseño de la interfaz de Lazydocker
La barra lateral izquierda muestra cinco secciones por las que puedes navegar:
- Proyecto : muestra los proyectos de Docker Compose si utilizas Compose.
- Contenedores : muestra una lista de todos los contenedores con su estado y nombre.
- Imágenes : muestra todas las imágenes de Docker en tu sistema.
- Volúmenes : enumeran los volúmenes de Docker.
- Redes - Muestra las redes de Docker.
Los contenedores en ejecución aparecen en verde, y los que han salido, en rojo o amarillo, dependiendo del estado de salida. Verás el nombre del contenedor y el código de salida de los contenedores detenidos.
El panel derecho cambia en función de lo que selecciones. Cuando seleccionas un contenedor, aparecen pestañas en la parte superior:
- Registros : registros de contenedores en tiempo real que se desplazan automáticamente.
- Estadísticas - Uso de la CPU y la memoria con actualizaciones en tiempo real
- Env - Variables de entorno para el contenedor
- Configuración - Configuración completa del contenedor
- Arriba - Procesos en ejecución dentro del contenedor
Selecciona un contenedor en la barra lateral izquierda y el panel derecho cambiará inmediatamente para mostrar toda la información disponible sobre ese contenedor. Cambia a Imágenes o Volúmenes en la barra lateral izquierda y obtendrás diferentes detalles relevantes sobre esos recursos.
Navegación con el teclado y atajos
Puedes navegar por lazydocker únicamente con el teclado.
Presiona las teclas (1 - 6) para cambiar entre secciones (Proyecto, Contenedores, Imágenes, etc.). Haz clic en las pestañas individuales para desplazarte por las pestañas del panel derecho.
Estos son los atajos básicos que debes recordar:
-
x: Abre el menú de acciones del elemento seleccionado. -
d: Eliminar el contenedor o la imagen seleccionados -
s: Iniciar un contenedor detenido -
r: Reiniciar un contenedor -
p: Pausar/reanudar un contenedor -
/: Buscar en los registros -
q: Salir de lazydocker -
?: Mostrar todos los accesos directos disponibles
La parte inferior de la pantalla muestra atajos de teclado para una consulta rápida. Puedes pulsar ? en cualquier momento para ver la lista completa de atajos de teclado; la pantalla de ayuda muestra diferentes opciones dependiendo de la sección en la que te encuentres.
Flujos de trabajo principales de Lazydocker
Los flujos de trabajo diarios son donde lazydocker te ahorra más tiempo. En lugar de memorizar comandos y copiar ID de contenedores, puedes navegar con las teclas de flecha y activar acciones con una sola pulsación.
Supervisión de contenedores y visualización de registros
La pestaña Registros se abre automáticamente cuando seleccionas un contenedor en la barra lateral.
Los registros se desplazan en tiempo real a medida que llegan nuevas entradas. No es necesario ejecutar docker logs -f , ya que lazydocker sigue los registros de forma predeterminada. Utiliza el ratón o las teclas PgUp/PgDn para desplazarte por los registros históricos.
Cambia a la pestaña Estadísticas para ver el uso de la CPU y la memoria. Las cifras se actualizan cada pocos segundos y muestran el consumo actual de recursos en porcentajes y valores absolutos.

Estadísticas de contenedores Docker
Esto sustituye a tres comandos CLI independientes:
-
docker pspara enumerar contenedores -
docker logs -fseguir registros -
docker statssupervisar los recursos
Con lazydocker, puedes ver los tres a la vez y cambiar entre contenedores con las teclas de flecha.
Gestión del ciclo de vida de los contenedores
Pulsa « x » (Abrir menú de acciones) en cualquier contenedor para abrir el menú de acciones.

Menú de acciones de Lazydocker
El menú muestra las operaciones disponibles: iniciar, detener, reiniciar, eliminar, pausar y más. Selecciona una acción con las teclas de flecha y pulsa « Enter » (Ejecutar acción) para ejecutarla. Para operaciones destructivas como eliminar un contenedor, lazydocker te pide que confirmes antes de hacer nada.

Cuadro de diálogo de confirmación
También puedes utilizar atajos de teclado directos:
-
s- Iniciar un contenedor detenido -
r- Reiniciar un contenedor en ejecución -
p- Pausar/reanudar un contenedor -
d- Eliminar un contenedor (con confirmación)
Ve a la sección Imágenes en la barra lateral para gestionar las imágenes. Pulsa x para ver operaciones con imágenes, como eliminar imágenes que no se utilizan. Lazydocker te muestra exactamente qué imágenes se eliminarán antes de que confirmes, para que no elimines accidentalmente algo que necesitas.

Acciones en la pestaña Imágenes
Trabajar con los servicios de Docker Compose
Si utilizas Docker Compose, cada servicio aparece como un contenedor independiente en la sección Contenedores.

Ejemplo de Docker Compose
Lazydocker no agrupa los servicios Compose ni muestra controles a nivel de pila. Gestionas cada servicio de la misma manera que gestionarías cualquier contenedor independiente: iniciar, detener, reiniciar, ver registros y comprobar estadísticas de forma individual.
Lazydocker ofrece una vista de proyecto que agrupa los contenedores creados a través de Docker Compose, pero la mayoría de las acciones se siguen realizando a nivel de contenedor individual en lugar de como una pila completa.
Personalización de Lazydocker para tu uso diario
Lazydocker funciona bien tal cual viene, pero personalizarlo lo hará tuyo.
Puedes cambiar los colores, añadir comandos personalizados, modificar los atajos de teclado y ajustar el diseño de la interfaz. Estos cambios son opcionales, así que no los consideres como algo que debas hacer.
Conceptos básicos sobre los archivos de configuración
La ubicación del archivo de configuración depende de tu sistema operativo. La forma más segura de encontrarlo y editarlo es abrir lazydocker, ir al panel Proyecto y pulsar la tecla de mayúsculas ( o ) en el teclado. Esto abrirá un archivo config.yml vacío.
A modo de demostración, pega esto dentro:
gui:
theme:
activeBorderColor:
- cyan
- bold
inactiveBorderColor:
- white
selectedLineBgColor:
- black
selectedLineFgColor:
- yellow
optionsTextColor:
- blue
searchingActiveBorderColor:
- green
Así es como se ve lazydocker después de reiniciar:

Ajustando los estilos de lazydocker
Los cambios son sutiles, pero se puede apreciar que el color del texto es azul en lugar de verde.
Los usuarios suelen personalizar:
- Esquemas de color: cambia los colores de los bordes, del texto y del fondo para que coincidan con el tema de tu terminal.
- Mensajes de confirmación: desactiva los mensajes «¿Estás seguro?» para las operaciones que realizas con frecuencia.
- Informes: desactiva los informes de uso anónimos.
- Comportamiento de la interfaz: controla si los paneles se actualizan automáticamente, la velocidad de desplazamiento de los registros y las secciones que aparecen de forma predeterminada.
La lista completa de opciones de configuración se encuentra en la documentación de lazydocker en GitHub. Hay muchas cosas que puedes modificar, pero no te hagas ilusiones: sigue siendo una aplicación TUI.
Comandos y atajos personalizados
Puedes añadir comandos personalizados que aparecerán en el menú de acciones al pulsar x.
Para ello, define comandos personalizados en tu archivo de configuración, en la sección « customCommands ». Aquí tienes un ejemplo que añade un comando a exec en un contenedor:
customCommands:
containers:
- name: 'bash'
attach: true
command: 'docker exec -it {{ .Container.ID }} /bin/bash'
serviceNames: []
La plantilla {{ .Container.ID }} se sustituye por el ID del contenedor seleccionado cuando ejecutas el comando. Puedes utilizar otras plantillas como {{ .Container.Name }} o {{ .Service.Name }}, dependiendo de lo que necesites.
Consulta la página de documentación de GitHub para obtener una visión completa.
Los comandos personalizados son útiles porque agilizan los flujos de trabajo repetitivos. Si realizas migraciones de bases de datos con regularidad, reinicias servicios específicos con indicadores personalizados o ejecutas contenedores para comprobar los registros, añadir estos comandos como comandos personalizados te ahorrará tener que escribirlos manualmente cada vez.
Casos de uso y consejos de Lazydocker
A continuación, se muestran algunos flujos de trabajo en los que lazydocker ahorra tiempo real y evita errores durante el trabajo diario de desarrollo.
Uso de lazydocker en el desarrollo local
Inicia lazydocker al comienzo de tu sesión de trabajo y déjalo ejecutándose en una pestaña de la terminal.
Cuando inicies tu entorno de desarrollo con docker-compose up, cambia a lazydocker para supervisarlo todo. Puedes ver qué contenedores se iniciaron correctamente, cuáles fallaron y qué errores aparecieron en los registros, todo ello sin ejecutar comandos independientes.
El aumento de la productividad se debe a la ausencia de teclado:
-
¿Necesitas reiniciar un contenedor después de cambiar un archivo de configuración? Pulsa
ren lugar de escribir.docker restart -
¿Quieres comprobar si tu base de datos está utilizando demasiada memoria? Cambia a la pestaña Estadísticas en lugar de ejecutar
docker stats -
¿Necesitas borrar los registros para ver los nuevos resultados con mayor claridad? Pulsa «
x» (Detener contenedor) y selecciona «Clear logs» (Borrar registros) en lugar de detener y reiniciar el contenedor.
Este flujo de trabajo funciona mejor cuando se trabaja con varios contenedores: un servidor web, una API, una base de datos, una caché y, tal vez, una cola de mensajes. Lazydocker te muestra el estado de toda tu pila de una sola vez.
Depuración de aplicaciones con varios contenedores
Cuando algo falla en una aplicación multicontener, lazydocker te ayuda a rastrear el problema a través de los servicios.
Imagina que tu API devuelve 500 errores. Compruebas los registros del contenedor API en lazydocker y ves errores de conexión con la base de datos. Ahora cambia al contenedor de la base de datos: los registros muestran que se reinicia cada 30 segundos. Puedes consultar la pestaña Estadísticas y verás que está alcanzando los límites de memoria. Ahora ya conoces el problema: la base de datos necesita más recursos.
Esto solo lleva unos segundos en lazydocker. Con la CLI, ejecutarías docker ps para encontrar los ID de los contenedores, docker logs para cada servicio, docker stats para comprobar los recursos y reunirías toda la información de lo que está sucediendo en varias ventanas de terminal.
La clave está en cambiar rápidamente entre contenedores. Usa las teclas de flecha para desplazarte entre los servicios, y los registros se actualizarán a medida que avances. Puedes seguir el flujo de una solicitud (desde el servidor web que la recibe, pasando por la API que la procesa, hasta la base de datos que ejecuta la consulta) observando los registros de cada contenedor en secuencia.
Mejores prácticas para un uso eficaz
Limpia con regularidad. Pulsa « x » (Eliminar imágenes) en la sección «Images» (Imágenes) y selecciona «Remove image» (Eliminar imagen) para eliminar las imágenes pendientes que se acumulan durante el desarrollo. Haz lo mismo con los contenedores detenidos que ya no necesites.
Personaliza lazydocker para tu flujo de trabajo. Si ejecutas contenedores con frecuencia, añade un comando personalizado para ello. Si siempre revisas primero los mismos contenedores, ajusta tu configuración para resaltarlos. La inversión de tiempo vale la pena cuando usas lazydocker a diario.
Aprende los atajos de teclado para las operaciones que repites. Pulsar « r » para reiniciar es más rápido que abrir el menú de acciones cada vez. Pulsar « / » para buscar registros es mejor que desplazarse manualmente. Al principio, los atajos resultan incómodos, pero al cabo de una semana se convierten en memoria muscular.
Mantén lazydocker ejecutándose en una pestaña dedicada de la terminal. No lo inicies, compruebes algo y lo cierres, ya que eso desperdicia las ventajas de la supervisión en tiempo real. Trátalo como tratarías a htop en cuanto a recursos del sistema: siempre disponible cuando necesites consultar algo.
Limitaciones de Lazydocker que debes tener en cuenta
Lazydocker no resuelve todos los problemas del flujo de trabajo de Docker, y conviene conocer de antemano algunas limitaciones.
Problemas con los permisos y los sockets de Docker
Lazydocker necesita acceso al socket de Docker para comunicarse con el demonio de Docker.
En Linux, esto suele significar que el usuario debe pertenecer al grupo docker. Si recibes errores de «permiso denegado» al iniciar lazydocker, ejecuta sudo usermod -aG docker $USER y cierra sesión y vuelve a iniciarla. Sin acceso al socket, lazydocker no puede iniciarse en absoluto.
En macOS y Windows, Docker Desktop gestiona los permisos por ti.
Pero si estás ejecutando Docker en una máquina virtual o utilizando una configuración no estándar, es posible que tengas que indicar a lazydocker la ubicación correcta del socket utilizando la variable de entorno DOCKER_HOST.
Las diferencias entre plataformas también son importantes. Algunas funciones funcionan de manera diferente en Windows en comparación con Linux y macOS, especialmente en lo que respecta a las rutas de archivo en montajes vinculados y la forma en que los contenedores acceden al sistema de archivos del host. Lazydocker muestra lo que informa Docker, por lo que si Docker se comporta de forma diferente en tu plataforma, lazydocker lo reflejará.
Limitaciones con contextos Docker remotos
Lazydocker funciona con hosts Docker remotos, pero la experiencia no es tan fluida como el desarrollo local.
Si utilizas contextos Docker para gestionar contenedores en servidores remotos, lazydocker puede conectarse a ellos. Pero la latencia de la red ralentiza la interfaz: los registros tardan más en cargarse, las estadísticas se actualizan con retrasos y, en ocasiones, la navegación puede resultar lenta. La herramienta fue diseñada para el desarrollo local, donde las respuestas de Docker son instantáneas.
El Docker remoto también significa que no puedes ejecutar fácilmente contenedores ni comandos interactivos. Lazydocker intenta abrir un terminal, pero la conexión a menudo se interrumpe o se comporta de forma impredecible dependiendo de la configuración de tu red y de SSH.
Para gestionar contenedores de producción en hosts remotos, utiliza la CLI oherramientas de orquestación dedicadas, comolos paneles de control de Kubernetes.
Conclusión
Lazydocker es ideal para programadores y equipos pequeños que trabajan con Docker a nivel local. Si estás ejecutando varios contenedores durante el desarrollo, depurando aplicaciones multiservicio o simplemente no quieres escribir los mismos comandos de Docker repetidamente, es una herramienta excelente a tener en cuenta.
DevOps tendrá una gran demanda en 2026. Consulta nuestra guía completa de certificación Docker (DCA) para conseguir tu primer empleo.
Domina Docker y Kubernetes
Preguntas frecuentes sobre Lazydocker
¿Cómo puedes personalizar las combinaciones de teclas en lazydocker?
Puedes personalizar las combinaciones de teclas editando el archivo lazydocker config.yml. Abre este archivo iniciando primero lazydocker, navegando hasta la pestaña Proyecto y pulsando « o » (Abrir archivo). Añade una sección « keybinding » (Atajos de teclado) y define tus atajos personalizados para diferentes acciones. La configuración utiliza el formato YAML, y puedes anular los atajos predeterminados o añadir otros nuevos para los comandos personalizados que hayas creado.
¿Cuáles son las principales diferencias entre lazydocker y docui?
Ambos son interfaces de usuario de terminal para Docker, pero lazydocker se centra en la supervisión en tiempo real con transmisión de registros en directo y estadísticas de recursos, mientras que docui hace hincapié en las operaciones de gestión de contenedores. Lazydocker cuenta con una comunidad de programadores más activa y ofrece un mejor soporte para los proyectos de Docker Compose. Docui ofrece una interfaz más sencilla, pero con menos opciones de personalización.
¿Puedes lazydocker gestionar proyectos de Docker Compose?
Sí, lazydocker funciona con Docker Compose. Cada servicio de tu archivo Compose aparece como un contenedor independiente en la sección Contenedores. La sección Proyecto muestra los nombres de los proyectos Compose activos, pero tú gestionas los servicios individuales de la misma manera que gestionarías los contenedores independientes: a través de la sección Contenedores.
¿Cómo se instala lazydocker en un servidor remoto?
Instala lazydocker en el servidor remoto utilizando los mismos métodos que para la instalación local: Homebrew, gestores de paquetes o descarga directa del binario. Una vez instalado, puedes conectarte al servidor mediante SSH y ejecutar lazydocker allí, o configurar los contextos de Docker localmente para conectar lazydocker al demonio Docker remoto. Las conexiones remotas serán más lentas debido a la latencia de la red.
¿Cuáles son los problemas más comunes que se plantean al utilizar lazydocker?
El problema más común son los errores de permisos del socket de Docker en Linux, que se solucionan añadiendo tu usuario al grupo docker con sudo usermod -aG docker $USER. Otros problemas incluyen un rendimiento lento al conectarse a hosts Docker remotos y contenedores que no responden a los comandos exec. Algunos usuarios también experimentan problemas de visualización si tu terminal no es compatible con los colores o caracteres Unicode necesarios.



