Dozzle
Lightweight real-time web-based log viewer and metrics monitor for Docker containers.
Why consider Dozzle?
Dozzle is a lightweight, web-based log viewer for Docker environments that provides live log streaming, container metrics, and multi-host monitoring without storing log files on disk.
Learn Dozzle by building
Practical setup notes, real use cases, and copy-ready examples in one focused guide.
In this guide4 sections
Monitoring Container Logs in Real Time with Dozzle
Dozzle is an open-source project sponsored by Docker OSS that provides a lightweight, web-based log viewer designed to simplify monitoring and debugging containerized applications across Docker, Docker Swarm, and Kubernetes environments. Unlike heavy enterprise logging stacks that require complex ingest pipelines and dedicated database clusters, Dozzle attaches directly to container runtimes to provide immediate log visibility. Read the official documentation.
Overview and Core Architecture
Dozzle doesn't store any log files because it is designed purely for live log viewing rather than historical log warehousing. By avoiding local file retention or external indexing databases, the utility operates with almost zero configuration overhead while safeguarding disk space on resource-constrained servers. Check the repository overview.
The application features a Go backend and Vue 3 frontend that stream events over SSE and WebSocket connections with a minimal resource footprint. This architectural separation allows the backend binary to handle socket communications efficiently while the browser renders log streams smoothly, even under heavy container activity. Learn more on the project website.
Dozzle delivers automatic JSON detection, color coding, multi-line stack-trace grouping, filters, and an embedded SQL engine for ad-hoc queries. Developers can isolate relevant log records instantly by executing SQL queries over incoming log data without having to export logs to third-party query engines. Review feature specifications.
Deploying Dozzle on Docker Hosts
Dozzle requires Docker Engine 19.03 or newer (API version 1.40+) because older daemons are not supported by the underlying Docker SDK. System administrators must verify their daemon version before launching the container to prevent communication mismatches between the Go client and the Docker daemon. Refer to the README.
The easiest way to set up Dozzle is to use the CLI and mount the docker.sock file, which is usually located at /var/run/docker.sock. Launching the official container requires exposing the web port and mounting the UNIX socket as shown in the official getting started instructions found in the documentation:
docker run -d -v /var/run/docker.sock:/var/run/docker.sock -v dozzle_data:/data -p 8080:8080 amir20/dozzle:latestDozzle stores notification settings and other data in /data inside the container, requiring a mounted volume to persist settings across restarts. Attaching a persistent named volume or host directory to /data guarantees that custom user alerts, UI preferences, and configuration profiles survive image upgrades and host reboots. Consult the setup guide.
Multi-Host Monitoring and Agent Mode
Dozzle can run in agent mode to expose remote Docker hosts over a secured connection using TLS. In multi-node topologies where Docker daemons run on separate physical or virtual machines, spinning up lightweight agents allows a single central Dozzle UI to display logs across your entire fleet. See the agent documentation:
docker run -v /var/run/docker.sock:/var/run/docker.sock -p 7007:7007 amir20/dozzle:latest agentWhen managing many agents across different environments, you can assign each agent to a named group with a merge button to view combined logs. Grouping hosts by environment—such as staging, production, or testing—simplifies log aggregation and allows teams to debug distributed services across multiple servers simultaneously. Read agent configuration details.
Authentication and Operational Scope
Dozzle supports multi-user authentication by setting --auth-provider to simple, reading user definitions from /data/users.yml. Operators can define distinct user credentials with hashed passwords and assign fine-grained container visibility filters so that individual developers only see logs pertinent to their assigned services. Review authentication guides.
By default, Dozzle uses session cookies which expire when the browser is closed, but you can extend the lifetime by setting --auth-ttl to a duration. Setting custom time-to-live intervals ensures session persistence tailored to organizational security policies while keeping unauthenticated external traffic blocked. Read the security documentation.
Dozzle has been tested with hundreds of containers but does not support offline searching or long-term log indexing. When organizations require multi-month log archival, audit compliance, or historical trend analysis, dedicated centralized solutions like Elasticsearch, Papertrail, or Loggly should complement Dozzle's live inspection capabilities. Check architectural scope.
The project is licensed under the MIT License and actively releases updates such as version v10.7.3 on GitHub. Detailed release changelogs, binary assets, and ongoing maintenance updates are published directly on the project's official repository releases page. Additional documentation and product updates can also be found at the official homepage and the canonical repository. License terms are detailed in the project license file.
Related tools
More options with a similar category or technology profile.
diskus
Minimal, fast alternative to du -sh written in Rust using multi-threaded directory traversal.
peco
Simplistic interactive filtering tool for Unix pipelines, process lists, and file trees.
Dapr CLI
Command-line tool for managing Dapr distributed application runtime environments and sidecars.
Freeze
Generate beautiful image screenshots and SVGs of code snippets and terminal outputs.