dozzle is a free, open source monitoring & observability project written in Go and released under MIT. It has 14,410 GitHub stars, 617 forks and 6 open issues, and was last pushed 22 hours ago. On this registry it ranks #26 of 97 tracked projects in Monitoring & Observability, with 5 head-to-head comparisons available. It gained 16 stars over the last 3 tracked days.

What is dozzle?

What it is

Dozzle is a lightweight, web-based application for monitoring Docker logs in real time. It is written in Go and distributed under the MIT license, and it lives in the container and orchestration ecosystem alongside Docker, Docker Swarm and Kubernetes, which its topics and tagline both name. The project ships as a small container — roughly 7 MB compressed — and its user interface is built with Vue.js. It exposes a browser view over logs rather than writing them anywhere: the README states plainly that Dozzle stores no log files and exists purely for live log viewing.

The concrete problem it solves is access. Reading container logs normally means opening a shell on each host, running a log command per container, and losing any combined view once the terminal closes. Dozzle replaces that with a single web page served from one container, mounted against the Docker socket, that streams logs and live CPU and memory statistics as they are produced. It also answers the multi-host problem: agent mode monitors several Docker hosts from one place, and Swarm mode covers clustered deployments. What it does not do is keep history, so anything written while nobody is watching is gone.

Key capabilities

  • Streaming real-time log view for Docker containers, with no log files stored.
  • Fuzzy search across container names.
  • Log search by regular expression.
  • Log search through SQL queries, documented as a SQL engine in the guides.
  • Split screen for watching several logs at once.
  • Live stats showing memory and CPU usage.
  • Multi-user authentication, including support for forward proxy authorization.
  • Swarm mode support and an agent mode for monitoring multiple Docker hosts.
  • Small memory footprint, with dark mode in the interface.

Who uses it and how

  • Operators running Dozzle as a container next to the workloads it watches, mounting the Docker Unix socket so no separate log shipper is needed.
  • Teams running Docker Compose stacks, where Dozzle is declared as a service with the socket and a dozzle_data volume.
  • Swarm deployments that need a live view across the cluster rather than per-node shells.
  • Multi-host setups using agent mode to reach Docker hosts that are not local.
  • Administrators on platforms that need a shell inside the container image, such as setups bind-mounting a #!/bin/sh wrapper over the entrypoint for per-container Tailscale toggles.

Getting started

Pull the image with docker pull amir20/dozzle:latest and run it with the Docker socket mounted, for example docker run --name dozzle -d --volume=/var/run/docker.sock:/var/run/docker.sock -v dozzle_data:/data -p 8080:8080 amir20/dozzle:latest, after which the interface is served at http://localhost:8080/. Images publish to Docker Hub and ghcr.io with matching tags, and the documentation at dozzle.dev covers authentication, remote hosts and an FAQ.

When to use

project readme (upstream, from github) — read inline

Dozzle - dozzle.dev

Dozzle is a lightweight, web-based application for monitoring Docker logs in real time. It doesn't store any log files—it's designed purely for live log viewing.

https://github.com/user-attachments/assets/66a7b4b2-d6c9-4fca-ab04-aef6cd7c0c31

Docker Image Size (latest by date) Docker Pulls Docker Version Test

[!NOTE] If you like Dozzle, check out dtop, a top-like application for monitoring Docker containers. It integrates with Dozzle to link directly to container logs.

Features

  • Intelligent fuzzy search for container names
  • Search logs using regex
  • Search logs using SQL queries
  • Small memory footprint
  • Split screen for viewing multiple logs
  • Live stats with memory and CPU usage
  • Multi-user authentication with support for forward proxy authorization
  • Swarm mode support
  • Agent mode for monitoring multiple Docker hosts
  • Dark mode

Dozzle has been tested with hundreds of containers. However, it doesn't support offline searching. Products like Loggly, Papertrail, or Kibana are better suited for full search capabilities.

Getting Started

Dozzle is a small container (7 MB compressed). Pull the latest release with:

$ docker pull amir20/dozzle:latest

Running Dozzle

The simplest way to use Dozzle is to run the Docker container. Mount the Docker Unix socket with --volume to /var/run/docker.sock:

$ docker run --name dozzle -d --volume=/var/run/docker.sock:/var/run/docker.sock -v dozzle_data:/data -p 8080:8080 amir20/dozzle:latest

Dozzle will be available at http://localhost:8080/.

Here is a Docker Compose example:

services:
  dozzle:
    container_name: dozzle
    image: amir20/dozzle:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - dozzle_data:/data
    ports:
      - 8080:8080
volumes:
  dozzle_data:

For advanced options like authentication, remote hosts, or common questions, see the documentation at dozzle.dev.

Image Tags

Images are published to both Docker Hub and ghcr.io with identical tags.

Tag Description
latest Most recent release. Recommended for most users.
v10.6.15 An exact release. Pin this for reproducible deployments.
v10.6 Latest patch within that minor version. Picks up bug fixes only.
v10 Latest release within that major version. Picks up new features too.
alpine Same as latest, but on an Alpine base instead of scratch.
v10.6.15-alpine, v10.6-alpine, v10-alpine Alpine variants of the version tags above.
master Built from the master branch on every push. Unreleased and unstable.
pr-1234, pr-1234-alpine Built from pull request #1234, for testing a fix before it ships.

The default images are built FROM scratch and contain only the Dozzle binary, which is why they are around 7 MB compressed. That also means there is no shell inside them. Use the alpine variants only if something in your setup needs one, most commonly platforms that bind-mount a #!/bin/sh wrapper over the container entrypoint such as Unraid's per-container Tailscale toggle. See the FAQ for details.

Avoid latest and master in production. latest moves on every release and master is unreleased code.

Swarm Mode

Dozzle works with Docker Swarm. You can run Dozzle as a global service:

$ docker service create --name dozzle --env DOZZLE_MODE=swarm --mode global --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock -p 8080:8080 amir20/dozzle:latest

See the Swarm Mode documentation for more details.

Agent Mode

Dozzle can monitor multiple Docker hosts. Run Dozzle in agent mode with:

$ docker run -v /var/run/docker.sock:/var/run/docker.sock -p 7007:7007 amir20/dozzle:latest agent

See the Agent Mode documentation for more details.

Technical Details

Dozzle uses automatic API negotiation, which works with most Docker configurations. Dozzle also works with Colima and Podman.

Dozzle requires Docker Engine 19.03 or newer (API version 1.40+). Older daemons are not supported by the underlying Docker SDK.

Installation on Podman

By default, Podman doesn't have a background process, but you can enable the remote socket for Dozzle to work.

First, verify if your Podman installation has the remote socket enabled:

podman info

If you see output like this under the remote socket key, it's already enabled:

  remoteSocket:
    exists: true
    path: /run/user/1000/podman/podman.sock

If it's not enabled, follow this tutorial to enable it.

Once the Podman remote socket is enabled, you can run Dozzle:

podman run --volume=/run/user/1000/podman/podman.sock:/var/run/docker.sock -d -p 8080:8080 docker.io/amir20/dozzle:latest

Nothing else is needed. Dozzle works out a stable host id for Podman on its own, since Podman is daemonless and has no engine identity to report.

[!NOTE] Older versions of this page told you to create a /var/lib/docker/engine-id file to prevent host not found errors. That never worked. Podman's Docker-compatible /info endpoint does not read any file, it returns a new random UUID on every call, so Dozzle now derives the id instead. You can delete the file.

For more details, see Podman Info or the FAQ.

Security

Dozzle supports file-based authentication and forward proxy authentication with tools like Authelia. See the documentation at https://dozzle.dev/guide/authentication.

Analytics

Dozzle collects anonymous user configurations using Google Analytics. Why? Dozzle is an open source project with no funding, so there's no time for formal user studies. Analytics help prioritize features and fixes based on how people use Dozzle. This data is completely public and can be viewed live on the Data Studio dashboard.

To disable analytics, use the --no-analytics flag.

Environment Variables and Configuration

Dozzle follows the 12-factor model. Configuration can be done via CLI flags or environment variables. See the documentation at dozzle.dev/guide/supported-env-vars for more details.

Support

There are many ways to support Dozzle:

  • Use it! Write about it! Star it! If you love Dozzle, drop me a line and tell me what you love.
  • Blog about Dozzle to spread the word. If you're good at writing, send PRs to improve the documentation at dozzle.dev.
  • Sponsor my work at https://www.buymeacoffee.com/amirraminfar

Buy Me A Coffee

License

MIT

Building

Want to contribute? Great! Dozzle has two parts: a Go backend that talks to Docker, and a Vue frontend that runs in the browser. You don't need to

readme truncated — read the full docs on github

Frequently asked questions

Is dozzle free to use?

dozzle is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does dozzle do?

Realtime log viewer for containers. Supports Docker, Swarm and K8s.

What is dozzle written in?

dozzle is primarily written in Go. Its source is publicly available at https://github.com/amir20/dozzle, and it has 14,410 GitHub stars.