Installazione e Configurazione Base di Dozzle su Ubuntu Server 26.04 con Docker Engine

da | Ago 3, 2026 | 0 commenti

 

Dozzle è un log viewer per container Docker leggero e in tempo reale pensato per essere l’alternativa pratica al classico docker logs -f lanciato a mano su ogni container.

È stateless (non salva nulla su disco), pesa pochi MB e si installa con un solo comando Docker.

Nelle versioni più recenti supporta anche query SQL sui log tramite DuckDB in-browser monitoraggio multi-host con agent dedicati e notifiche verso Slack, Discord, ntfy o webhook generici.

In questa guida vedremo come installarlo su Ubuntu 26.04 con configurazione tramite Docker Compose, persistenza dei dati, autenticazione e pubblicazione dietro reverse proxy con certificato TLS.

 

PREREQUISITI

  • Un server Ubuntu 26.04 con accesso sudo
  • Docker Engine (versione 19.03 o superiore, API 1.40+) e il plugin Docker Compose
  • Un container già in esecuzione, giusto per avere qualche log da guardare

 

INSTALLAZIONE DI DOCKER

Se Docker non è ancora installato eseguire i comandi:

Dopo l’ultimo comando, esci e rientra nella sessione SSH (o esegui newgrp docker) per usare Docker senza sudo.

 

CREAZIONE DELLA DIRECTORY DELLO STACK

Come per gli altri servizi self-hosted conviene tenere ogni stack in una cartella dedicata sotto /opt:

 

 

CREAZIONE DEL DOCKER-COMPOSE.YML

Creare il file docker-compose.yml con il comando:

Contenuto minimo, con persistenza del volume /data (necessaria per non perdere le impostazioni di notifica tra un riavvio e l’altro del container):

NOTA BENE: il flag :ro sul mount del socket Docker perchè Dozzle ha bisogno solo di leggere lo stato dei container e i log, quindi montarlo in sola lettura è una buona pratica anche se, va detto, l’accesso al socket Docker resta comunque equivalente a un accesso root sull’host.

 

AVVIO DEL CONTAINER

Avviare il Container con il comando:

Dovremmo visualizzare un output simile al seguente:

Fare un check con il comando:

Dovremmo visualizzare un output simile al seguente:

Verificare che sia raggiungibile il link con il comando:

 

 

ACCESSO A DOZZLE DA WEBGUI

Se tutto è a posto da un qualsiasi browser richiamare il link http://IP-DEL-SERVER:8080

Se è tutto OK dovremmo visualizzare la dashboard con l’elenco dei container in esecuzione sull’host.

 

CONFIGURAZIONE DEL FIREWALL

Se si vuole esporre la porta solo sulla rete interna limitare la regola alla subnet invece di aprirla su 0.0.0.0 con il comando:

Se invece si pubblica Dozzle dietro reverse proxy la porta 8080 non deve essere esposta pubblicamente: basta che sia raggiungibile dal proxy.

 

ABILITARE L’AUTENTICAZIONE SU DOOZLE

Di default Dozzle è senza autenticazione quindi chiunque raggiunge la porta vede i log di tutti i container.

Per qualsiasi esposizione oltre al semplice localhost va abilitata l’autenticazione con il comando:

Poi nel docker-compose.yml scommentare la seguente riga:

Quindi riavviare lo stack con il comando:

Da questo momento l’accesso alla UI richiederà la login.

 

MONITORAGGIO MULTI-HOST (OPZIONALE)

Se si hanno più host Docker da monitorare da un’unica dashboard Dozzle supporta un’architettura ad agent: su ogni host remoto lanci un agent leggero, e li colleghi tutti al Dozzle principale.

Su ogni host remoto eseguire i comandi:

Sul Dozzle principale aggiungere nel docker-compose.yml le seguenti righe:

L’agent comunica via gRPC sulla porta 7007: verificare che sia raggiungibile prima di dare per scontato che non funzioni.

 

FUNZIONALITA’ DI DOOZER

Ecco un quadro completo delle funzionalità di Dozzle, con pro e contro di ciascuna:

Monitoraggio log in tempo reale

Streaming live dei log di tutti i container Docker, senza bisogno di aprire terminali multipli con docker logs -f.

Pro: zero configurazione, log visibili immediatamente all’avvio

Contro: nessuna persistenza se un container va giù, vedi solo quello che rimane nel buffer del log driver Docker (limitato da max-size in daemon.json)

Ricerca e filtri sui log

Supporta ricerca regex, fuzzy search e (nelle versioni recenti) query SQL complete tramite DuckDB, eseguite via WebAssembly direttamente nel browser.

Pro: ricerca potente senza bisogno di un backend esterno o database

Contro: la ricerca SQL funziona solo sui log attualmente in buffer/visibili, non su uno storico persistente non è un sostituto di Loki o ELK per ricerche su settimane di log

Statistiche container (CPU, memoria, rete)

Grafici con storico “rolling” delle risorse per ogni container, aggiornati in tempo reale.

Pro: utile per un colpo d’occhio rapido senza aprire docker stats o Portainer

Contro: storico limitato alla sessione, non pensato per capacity planning a lungo termine

Multi-container / split view

Visualizzazione affiancata dei log di più container contemporaneamente.

Pro: comodo per debug su stack con più servizi correlati (es. app + db + reverse proxy)

Contro: con molti container aperti insieme l’interfaccia diventa affollata

Azioni sui container (start/stop/restart, shell)

Da abilitare esplicitamente con DOZZLE_ENABLE_ACTIONS e DOZZLE_ENABLE_SHELL.

Pro: gestione rapida senza uscire dal browser

Contro: disattivate di default per motivi di sicurezza — abilitarle su un’istanza esposta pubblicamente amplia parecchio la superficie di rischio, dato che chi ha accesso può eseguire comandi nei container

Notifiche/alert su pattern di log

Match su espressioni configurabili con notifica verso Slack, Discord, ntfy o webhook generico.

Pro: permette un minimo di alerting reattivo senza integrare uno stack di observability completo

Contro: nessuna gestione di stato/silenziamento evoluta come in un vero sistema di alerting (Alertmanager, ecc.)

Multi-host e Swarm/Kubernetes

Architettura ad agent per collegare più host Docker o cluster Swarm da un’unica dashboard; supporto anche per Kubernetes (DOZZLE_MODE=k8s, con RBAC per accesso ai log dei pod).

Pro: scala bene per contesti MSP con più host da monitorare centralmente

Contro: richiede di esporre/raggiungere la porta 7007 (gRPC) dell’agent su ogni host remoto, quindi va pianificato bene su reti segmentate o dietro VPN/tunnel

Autenticazione

Provider “simple” con utenti generati via CLI, oppure integrazione con reverse proxy di autenticazione tipo Authelia.

Pro: copre il caso base senza bisogno di terze parti

Contro: disattivata di default è facile dimenticarsene e lasciare un’istanza aperta su una rete condivisa; nessun supporto nativo a RBAC granulare (es. utenti che vedono solo certi container)

Impronta e leggerezza

Immagine da 7-10 MB, footprint minimo di CPU/RAM, nessun database.

Pro: ideale per homelab o affiancato ad app leggere senza overhead percepibile

Contro: proprio perché stateless, non fa retention: non è adatto a compliance/audit log a lungo termine

Accesso al socket Docker

Richiede il mount di /var/run/docker.sock (idealmente in sola lettura, :ro).

Pro: nessuna configurazione aggiuntiva per “vedere” tutti i container

Contro: l’accesso al socket Docker è di fatto equivalente a un accesso root sull’host è il principale motivo per cui va protetto dietro autenticazione/reverse proxy e mai esposto direttamente su internet

Analytics anonime

Raccoglie dati anonimi di utilizzo (Google Analytics) per orientare lo sviluppo, disattivabile col flag –no-analytics.

Pro: aiuta il progetto (open source, non finanziato) a capire dove investire

Contro: va disattivato esplicitamente se in ambienti con policy privacy stringenti (es. NIS2, clienti regolamentati)

In sintesi Dozzle è ottimo come vista live leggera e immediata, ma non sostituisce una piattaforma di log management vera e propria quando servono retention, ricerca storica, alerting strutturato o controlli di accesso granulari lì restano scelte più adatte Loki+Grafana, ELK o soluzioni a pagamento tipo Dash0.

Articoli Recenti

Veeam Backup

Monitoring

Friends

  • My English Lab  English School
  • ChrSystem   Servizi ICT
  • Since 01  Kreative Graphics

Database

Networking

Autori

  • Raffaele Chiatto  Amministratore
  • Marco Valle  Autore
  • Angelo Lauria  Autore
  • Edoardo Prot  Autore
  • Davide D’Urso  Autore
Raffaele Chiatto

Raffaele Chiatto

Sono Raffaele Chiatto, un appassionato di informatica a 360 gradi. Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare. Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.
Tag: Docker | Dozzle | Ubuntu
Categorie: Dozzle | Ubuntu

Related Post

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Virtualizzazione

Linux

Microsoft

Apple

Backup

Database

Security

Automazione