Skip to content

Dozzle vs Portainer ​

Portainer is built to manage containers: stacks, volumes, networks, images and users. Dozzle is built to read their logs. Portainer has a log viewer, and Dozzle can start, stop and update containers, but each one is centered on a different job. Many people run both.

At a glance ​

DozzlePortainer
Main jobReading logsManaging containers, stacks, volumes, networks and images
Live logsStreams as lines arriveAuto refresh
Several containersA stack, a service or a custom group in one merged viewOne container at a time
JSON logsDetected, formatted and color coded. SQL over JSON fieldsShown as text
SearchSearch and filter, including regular expressionsSearch and filter by text
CPU and memoryLive charts with recent historyLive stats
AlertsOn log lines, CPU or memory, and container events. See AlertsNot in the log viewer
Image updatesChecks for new images and updates on a schedule. See UpdatesPull and redeploy by hand
Several hostsAgents, Swarm, KubernetesEnvironments
SetupOne container, plus an optional setup wizard on first startOne container, plus an admin account on first start

When to use Portainer instead ​

Pick Portainer if you want to create and edit stacks from a browser, manage volumes, networks and images, or give a team access to some environments and not others. Dozzle does not try to do any of that.

When Dozzle fits better ​

Pick Dozzle when the question is "what is this container doing right now?" It opens straight to logs, follows several containers at once, and makes JSON readable without any setup. It is also read-only by default: actions and shell access are off until you turn them on.

Run both ​

The two do not conflict. Both read the Docker socket and run on different ports:

yaml
services:
  dozzle:
    image: amir20/dozzle:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - dozzle_data:/data
    ports:
      - 8080:8080
  portainer:
    image: portainer/portainer-ce:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - portainer-data:/data
    ports:
      - 9443:9443
volumes:
  dozzle_data:
  portainer-data:

To jump from Portainer to a container's logs in Dozzle, see linking to a container by name.

Released under the MIT License. Open sourced and sponsored by Docker OSS.