Corso
Stanco di digitare docker ps, docker logs e docker stats cinquanta volte al giorno solo per controllare cosa stanno facendo i tuoi container?
Mettiamo che tu stia gestendo cinque container e qualcosa si rompa. Ecco il tuo flusso di lavoro: controlli i container in esecuzione, fai grep per quello giusto, copi l’ID, controlli i log, scorri l’output, verifichi l’utilizzo della CPU con un altro comando. Quando finalmente capisci cosa sta succedendo, hai eseguito una dozzina di comandi e perso un bel po’ di tempo.
Questo succede perché la CLI di Docker non è stata pensata per il monitoraggio costante e le azioni rapide che il lavoro di sviluppo reale richiede.
Lazydocker ti offre un’interfaccia da terminale che mostra tutto in una volta sola: container in esecuzione, log, statistiche e stato dei servizi in un’unica schermata. Puoi avviare, fermare e riavviare i container con un tasto, seguire i log in tempo reale e individuare i processi che consumano risorse senza dover memorizzare i comandi.
In questo articolo ti mostrerò come installare lazydocker, navigare nella sua interfaccia e usarlo per velocizzare i flussi di lavoro Docker quotidiani.
Se sei alle prime armi con Docker, inizia dalle basi. Il nostro corso Introduction to Docker ti aiuterà a padroneggiare i fondamenti in poche ore.
Che cos’è Lazydocker?
Lazydocker è un’interfaccia utente da terminale (TUI) che ti offre un modo visivo per gestire i container Docker senza lasciare la riga di comando.
Si appoggia all’API di Docker, quindi usa gli stessi comandi che eseguiresti manualmente, ma avvolti in un’interfaccia che ti mostra tutto insieme. Ottieni aggiornamenti in tempo reale su stato dei container, log, statistiche e utilizzo delle risorse in una singola finestra.
Le TUI come lazydocker sono popolari per la gestione dei container perché rappresentano il giusto compromesso tra app GUI e puro lavoro da CLI. Mantieni la velocità e il controllo da tastiera del terminale ma aggiungi un’organizzazione visiva che rende più semplice interpretare sistemi complessi. Niente più passaggi di contesto a Docker Desktop e niente più necessità di memorizzare le flag di ogni comando.
Il problema che lazydocker risolve
La CLI di Docker ti costringe a mettere insieme informazioni da più comandi. Eccone alcuni:
-
Vuoi vedere quali container sono in esecuzione?
docker ps -
Ti servono i log?
docker logs <container_id> -
Controllare l’uso della CPU?
docker stats
Ogni informazione richiede un comando separato e ti ritrovi continuamente a copiare ID dei container o a fare grep sull’output per trovare ciò che ti serve.
Lazydocker risolve mettendo tutto in un unico posto. Vedi tutti i tuoi container, i loro log, l’uso delle risorse e le azioni disponibili in una singola schermata. Navighi nell’interfaccia con le frecce. Avvii o fermi un container con un tasto invece di digitare un comando completo.
L’interfaccia rende anche Docker più sicuro nell’uso quotidiano. Quando stai per rimuovere un container o fare il prune delle immagini, lazydocker ti mostra esattamente cosa stai eliminando prima della conferma.
Come installare Lazydocker
Prima di usare lazydocker, devi installarlo sul tuo sistema.
Il processo è rapido e funziona su macOS, Linux e Windows. Hai diverse opzioni a seconda della configurazione e del gestore pacchetti preferito.
Metodi di installazione per macOS, Linux e Windows
Ecco i principali modi per installare lazydocker:
Homebrew (macOS e Linux):
brew install lazydocker
È il gestore pacchetti che uso su macOS: ecco come appare l’output:

Installazione di Lazydocker su macOS
Scoop (Windows):
scoop install lazydocker
Chocolatey (Windows):
choco install lazydocker
asdf-vm (version manager multipiattaforma):
asdf plugin add lazydocker
asdf install lazydocker latest
asdf global lazydocker latest
Installazione via Go (se hai Go installato):
go install github.com/jesseduffield/lazydocker@latest
Per l’installazione manuale, scarica l’ultima release per la tua piattaforma dalla pagina delle release su GitHub, estrai l’archivio e sposta il binario in una directory presente nel tuo PATH.
Devi avere Docker installato e in esecuzione prima che lazydocker possa funzionare. Lazydocker si connette al demone Docker tramite la socket di Docker, quindi se Docker non è in esecuzione, lazydocker non può avviarsi.
Una volta installato, verifica che funzioni eseguendo lazydocker nel terminale: l’interfaccia dovrebbe avviarsi e connettersi al tuo demone Docker.

Avvio di Lazydocker
Prime mosse con l’interfaccia di Lazydocker
Quando avvii lazydocker, vedi un’interfaccia a schermo diviso che mostra il tuo ambiente Docker in tempo reale.
L’interfaccia è divisa in due aree principali: una barra laterale sinistra per la navigazione e un pannello a destra che mostra i dettagli di ciò che hai selezionato. Tutto si aggiorna automaticamente man mano che l’ambiente Docker cambia: nessun refresh manuale necessario.

Interfaccia di Lazydocker
Layout dell’interfaccia di Lazydocker
La barra laterale sinistra elenca cinque sezioni tra cui puoi navigare:
- Project - Mostra i progetti Docker Compose se stai usando Compose
- Containers - Elenca tutti i container con stato e nomi
- Images - Mostra tutte le immagini Docker sul sistema
- Volumes - Elenca i volumi Docker
- Networks - Mostra le reti Docker
I container in esecuzione appaiono in verde, quelli usciti in rosso o giallo, a seconda del codice di uscita. Per i container fermati vedi il nome e il codice di uscita.
Il pannello di destra cambia in base a ciò che selezioni. Quando selezioni un container, compaiono delle schede in alto:
- Logs - Log del container in tempo reale che scorrono automaticamente
- Stats - Utilizzo di CPU e memoria con aggiornamenti live
- Env - Variabili d’ambiente del container
- Config - Configurazione completa del container
- Top - Processi in esecuzione all’interno del container
Seleziona un container nella barra laterale e il pannello di destra passa immediatamente a mostrare tutte le informazioni disponibili per quel container. Passa a Images o Volumes nella barra laterale e vedrai dettagli diversi pertinenti a quelle risorse.
Navigazione da tastiera e scorciatoie
Navighi in lazydocker interamente con la tastiera.
Premi i tasti (1 - 6) per passare tra le sezioni (Project, Containers, Images, ecc.). Fai clic sulle singole schede per scorrere tra le schede nel pannello di destra.
Ecco le scorciatoie principali da ricordare:
-
x: Apri il menu azioni per l’elemento selezionato -
d: Rimuovi il container o l’immagine selezionata -
s: Avvia un container fermo -
r: Riavvia un container -
p: Metti in pausa/riprendi un container -
/: Cerca nei log -
q: Esci da lazydocker -
?: Mostra tutte le scorciatoie disponibili
In fondo allo schermo trovi un promemoria con i tasti principali. Puoi premere ? in qualsiasi momento per vedere l’elenco completo delle scorciatoie da tastiera: la schermata di aiuto mostra opzioni diverse a seconda della sezione in cui ti trovi.
Flussi di lavoro principali in Lazydocker
Sono i flussi di lavoro quotidiani quelli in cui lazydocker ti fa risparmiare più tempo. Invece di memorizzare comandi e copiare ID dei container, navighi con le frecce e attivi azioni con singoli tasti.
Monitorare i container e visualizzare i log
La scheda Logs si apre automaticamente quando selezioni un container dalla barra laterale.
I log scorrono in tempo reale man mano che arrivano nuove voci. Non devi eseguire docker logs -f <container_id>: lazydocker segue i log per impostazione predefinita. Usa il mouse oppure PgUp/PgDn per scorrere i log storici.
Passa alla scheda Stats per vedere l’utilizzo di CPU e memoria. I numeri si aggiornano ogni pochi secondi, mostrandoti il consumo corrente di risorse in percentuali e valori assoluti.

Statistiche dei container Docker
Questo sostituisce tre comandi CLI separati:
-
docker psper elencare i container -
docker logs -f <container_id>per seguire i log -
docker stats <container_id>per monitorare le risorse
Con lazydocker, vedi tutto e tre insieme e passi tra i container con le frecce.
Gestire il ciclo di vita dei container
Premi x su qualsiasi container per aprire il menu delle azioni.

Menu azioni di Lazydocker
Il menu mostra le operazioni disponibili: avvia, ferma, riavvia, rimuovi, metti in pausa e altro. Seleziona un’azione con le frecce e premi Invio per eseguirla. Per le operazioni distruttive come la rimozione di un container, lazydocker chiede conferma prima di fare qualsiasi cosa.

Finestra di conferma
Puoi anche usare scorciatoie dirette da tastiera:
-
s- Avvia un container fermo -
r- Riavvia un container in esecuzione -
p- Metti in pausa/riprendi un container -
d- Rimuovi un container (con conferma)
Vai alla sezione Images nella barra laterale per gestire le immagini. Premi x per vedere le operazioni sulle immagini, come rimuovere quelle inutilizzate. Lazydocker ti mostra esattamente quali immagini verranno eliminate prima della conferma, così non rimuovi per errore qualcosa che ti serve.

Azioni nella scheda Images
Lavorare con i servizi Docker Compose
Se usi Docker Compose, ogni servizio appare come un container separato nella sezione Containers.

Esempio di Docker Compose
Lazydocker non raggruppa i servizi Compose né mostra controlli a livello di stack. Gestisci ogni servizio come gestiresti un container standalone: avvio, stop, riavvio, visualizzazione log e statistiche individualmente.
Lazydocker offre una vista Project che raggruppa i container creati tramite Docker Compose, ma la maggior parte delle azioni si esegue comunque a livello di singolo container invece che sull’intero stack.
Personalizzare Lazydocker per l’uso quotidiano
Lazydocker funziona bene già out of the box, ma la personalizzazione lo renderà tuo.
Puoi cambiare i colori, aggiungere comandi personalizzati, modificare le scorciatoie da tastiera e ritoccare il layout dell’interfaccia. Queste modifiche sono opzionali, quindi non considerarle un obbligo.
Basi del file di configurazione
La posizione del file di configurazione dipende dal sistema operativo. Il modo più sicuro per trovarlo e modificarlo è aprire lazydocker, andare al pannello Project e premere o sulla tastiera. Si aprirà un file config.yml vuoto.
A scopo dimostrativo, incolla questo al suo interno:
gui:
theme:
activeBorderColor:
- cyan
- bold
inactiveBorderColor:
- white
selectedLineBgColor:
- black
selectedLineFgColor:
- yellow
optionsTextColor:
- blue
searchingActiveBorderColor:
- green
Ecco come appare lazydocker dopo un riavvio:

Ritoccare gli stili di lazydocker
Le modifiche sono sottili, ma puoi notare il testo blu invece che verde.
Le personalizzazioni più comuni sono:
- Schemi di colori - Cambia colori dei bordi, del testo e dello sfondo per abbinarli al tema del tuo terminale
- Conferme - Disattiva i messaggi di "sei sicuro?" per le operazioni che esegui spesso
- Report - Disattiva l’invio anonimo di statistiche d’uso
- Comportamento dell’interfaccia - Controlla se i pannelli si aggiornano automaticamente, la velocità di scorrimento dei log e quali sezioni appaiono di default
L’elenco completo delle opzioni di configurazione è nella documentazione di lazydocker su GitHub. Puoi modificare parecchio, ma tieni le aspettative realistiche: è pur sempre un’applicazione TUI.
Comandi personalizzati e scorciatoie
Puoi aggiungere comandi personalizzati che compaiono nel menu azioni quando premi x.
Per farlo, definisci i comandi nel file di configurazione sotto la sezione customCommands. Ecco un esempio che aggiunge un comando per fare exec in un container:
customCommands:
containers:
- name: 'bash'
attach: true
command: 'docker exec -it {{ .Container.ID }} /bin/bash'
serviceNames: []
Il template {{ .Container.ID }} viene sostituito con l’ID del container selezionato quando esegui il comando. Puoi usare altri template come {{ .Container.Name }} o {{ .Service.Name }} in base alle necessità.
Consulta la pagina della documentazione su GitHub per avere il quadro completo.
I comandi personalizzati sono utili perché velocizzano i flussi ripetitivi. Se esegui regolarmente migrazioni del database, riavvii servizi specifici con flag personalizzate o fai exec nei container per controllare i log, aggiungerli come comandi personalizzati ti evita di digitarli ogni volta.
Casi d’uso e consigli per Lazydocker
Ecco alcuni flussi in cui lazydocker fa davvero risparmiare tempo e previene errori durante il lavoro di sviluppo quotidiano.
Usare lazydocker nello sviluppo locale
Avvia lazydocker all’inizio della sessione di lavoro e lascialo in esecuzione in una scheda del terminale.
Quando avvii l’ambiente di sviluppo con docker-compose up, passa a lazydocker per monitorare tutto. Vedi quali container sono partiti correttamente, quali sono falliti e quali errori sono comparsi nei log, senza eseguire comandi separati.
Il boost di produttività arriva dall’assenza di digitazione:
-
Devi riavviare un container dopo aver cambiato un file di configurazione? Premi
rinvece di digitaredocker restart <container_id> -
Vuoi controllare se il tuo database usa troppa memoria? Passa alla scheda Stats invece di eseguire
docker stats -
Devi pulire i log per vedere meglio il nuovo output? Premi
xe seleziona "Clear logs" invece di fermare e riavviare il container
Questo flusso funziona al meglio quando lavori con più container: un web server, un’API, un database, una cache e magari una coda di messaggi. Lazydocker ti mostra lo stato di salute dell’intero stack in un colpo d’occhio.
Debug di applicazioni multi-container
Quando qualcosa si rompe in un’app multi-container, lazydocker ti aiuta a tracciare il problema tra i vari servizi.
Immagina che la tua API restituisca errori 500. Controlli i log del container dell’API in lazydocker e vedi errori di connessione al database. Ora passa al container del database: i log mostrano che si riavvia ogni 30 secondi. Vai sulla scheda Stats e vedi che raggiunge i limiti di memoria. Ora conosci il problema: il database ha bisogno di più risorse.
Questo richiede pochi secondi in lazydocker. Con la CLI, dovresti eseguire docker ps per trovare gli ID dei container, docker logs per ogni servizio, docker stats per controllare le risorse e ricostruire il quadro tra più finestre del terminale.
La chiave è passare rapidamente tra i container. Usa le frecce per saltare tra i servizi e i log si aggiornano man mano. Puoi seguire il flusso di una richiesta — dal web server che la riceve, all’API che la elabora, al database che esegue la query — osservando in sequenza i log di ciascun container.
Buone pratiche per un uso efficace
Fai pulizia regolarmente. Premi x nella sezione Images e seleziona "Remove image" per rimuovere le immagini dangling che si accumulano durante lo sviluppo. Fai lo stesso per i container fermati che non ti servono più.
Personalizza lazydocker in base al tuo flusso. Se fai spesso exec nei container, aggiungi un comando personalizzato. Se controlli sempre gli stessi container per primi, regola la config per evidenziarli. Il tempo investito ripaga quando usi lazydocker ogni giorno.
Impara le scorciatoie per le operazioni ripetute. Premere r per riavviare è più veloce che aprire ogni volta il menu azioni. Premere / per cercare nei log batte lo scrolling manuale. All’inizio le scorciatoie sono goffe, ma dopo una settimana diventano automatiche.
Tieni lazydocker in esecuzione in una scheda del terminale dedicata. Non avviarlo, controllare qualcosa e chiuderlo: così sprechi il vantaggio del monitoraggio in tempo reale. Trattalo come tratteresti htop per le risorse di sistema: sempre disponibile quando ti serve dare un’occhiata.
Limitazioni di Lazydocker da considerare
Lazydocker non risolve ogni problema dei flussi di lavoro Docker e alcune limitazioni vale la pena conoscerle in anticipo.
Socket di Docker e problemi di permessi
Lazydocker ha bisogno di accedere alla socket di Docker per comunicare con il demone Docker.
Su Linux, di solito questo significa che il tuo utente deve far parte del gruppo docker. Se ottieni errori di "permission denied" all’avvio di lazydocker, esegui sudo usermod -aG docker $USER e disconnettiti/riconnettiti. Senza accesso alla socket, lazydocker non può avviarsi.
Su macOS e Windows, Docker Desktop gestisce i permessi per te.
Ma se esegui Docker in una VM o con una configurazione non standard, potresti dover indicare a lazydocker la posizione corretta della socket usando la variabile d’ambiente DOCKER_HOST.
Contano anche le differenze tra piattaforme. Alcune funzionalità si comportano diversamente su Windows rispetto a Linux e macOS, in particolare per i percorsi dei file nei bind mount e per l’accesso dei container al filesystem host. Lazydocker mostra ciò che Docker riporta, quindi se Docker si comporta diversamente sulla tua piattaforma, lazydocker lo rifletterà.
Limitazioni con i contesti Docker remoti
Lazydocker funziona con host Docker remoti, ma l’esperienza non è fluida come in locale.
Se usi i contesti Docker per gestire container su server remoti, lazydocker può connettersi. Ma la latenza di rete rende l’interfaccia più lenta: i log impiegano di più a caricarsi, le statistiche si aggiornano con ritardi e la navigazione a volte può sembrare legnosa. Lo strumento è stato pensato per lo sviluppo locale, dove le risposte di Docker sono istantanee.
Con Docker remoto inoltre non è sempre facile fare exec nei container o eseguire comandi interattivi. Lazydocker prova ad aprire una shell, ma la connessione spesso va in timeout o si comporta in modo imprevedibile a seconda della rete e della configurazione SSH.
Per gestire container in produzione su host remoti, resta sulla CLI o su strumenti di orcKubernetes dashboard.
Conclusione
Lazydocker è perfetto per sviluppatori e piccoli team che lavorano con Docker in locale. Se esegui più container durante lo sviluppo, fai debug di applicazioni multi-servizio o semplicemente non vuoi digitare sempre gli stessi comandi Docker, è uno strumento da considerare.
Le competenze DevOps sono molto richieste nel 2026. Leggi la nostra guida completa alla certificazione Docker (DCA) per trovare il tuo primo lavoro.
Domande frequenti su Lazydocker
Come posso personalizzare le scorciatoie da tastiera in lazydocker?
Puoi personalizzare le scorciatoie modificando il file config.yml di lazydocker. Aprilo avviando lazydocker, andando sulla scheda Project e premendo o. Aggiungi una sezione keybinding e definisci le scorciatoie personalizzate per le varie azioni. La configurazione usa il formato YAML e puoi sovrascrivere le scorciatoie predefinite o aggiungerne di nuove per i comandi personalizzati che hai creato.
Quali sono le principali differenze tra lazydocker e docui?
Entrambi sono TUI per Docker, ma lazydocker punta sul monitoraggio in tempo reale con streaming dei log e statistiche delle risorse, mentre docui enfatizza le operazioni di gestione dei container. Lazydocker ha una community di sviluppo più attiva e un supporto migliore per i progetti Docker Compose. Docui offre un’interfaccia più semplice ma con meno opzioni di personalizzazione.
Lazydocker può gestire progetti Docker Compose?
Sì, lazydocker funziona con Docker Compose. Ogni servizio del tuo file Compose appare come un container separato nella sezione Containers. La sezione Project mostra i nomi dei progetti Compose attivi, ma gestisci i singoli servizi così come faresti con i container standalone — tramite la sezione Containers.
Come installo lazydocker su un server remoto?
Installa lazydocker sul server remoto con gli stessi metodi dell’installazione locale: Homebrew, gestori di pacchetti oppure scaricando direttamente il binario. Una volta installato, puoi fare SSH sul server ed eseguire lazydocker lì, oppure configurare i contesti Docker in locale per connettere lazydocker al demone Docker remoto. Le connessioni remote saranno più lente a causa della latenza di rete.
Quali sono i problemi comuni nell’uso di lazydocker?
Il problema più comune sono gli errori di permesso sulla socket di Docker in Linux, che risolvi aggiungendo il tuo utente al gruppo docker con sudo usermod -aG docker $USER. Altri problemi includono prestazioni lente quando ti connetti a host Docker remoti e container che non rispondono ai comandi exec. Alcuni utenti riscontrano anche problemi di visualizzazione se il terminale non supporta i colori richiesti o i caratteri Unicode.


