amir20/dozzle

Sponsored OSS

By amir20

โ€ขUpdated about 19 hours ago

Dozzle is a real-time log viewer for docker containers.

Image
Security
Developer tools
Monitoring & observability
143

100M+

amir20/dozzle repository overview

โ Dozzle - dozzle.devโ 

Dozzle is a small lightweight application with a web based interface to monitor Docker logs. It doesnโ€™t store any log files. It is for live monitoring of your container logs only.

https://user-images.githubusercontent.com/260667/227634771-9ebbe381-16a8-465a-b28a-450c5cd20c94.mp4โ 

Go Report Card Docker Pulls Docker Version Test

โ Features

  • Intelligent fuzzy search for container names ๐Ÿค–
  • Search logs using regex ๐Ÿ”ฆ
  • Small memory footprint ๐ŸŽ
  • Split screen for viewing multiple logs
  • Download logs easily
  • Live stats with memory and CPU usage
  • Multi-user authentication with support for proxy forward authorization ๐Ÿšจ

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

โ Getting Started

Dozzle is a small container (4 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. Also, 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:ro -p 8888:8080 amir20/dozzle:latest

Dozzle will be available at http://localhost:8888/โ .

Here is the Docker Compose file:

version: "3"
services:
  dozzle:
    container_name: dozzle
    image: amir20/dozzle:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    ports:
      - 8888:8080

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

โ Technical Details

Dozzle users automatic API negotiation which works with most Docker configurations. Dozzle also works with Colimaโ  and Podmanโ .

โ Installation on podman

By default Podman doesn't have a background process but you can enable this for Dozzle to work.

Verify first if your podman installation has enabled remote socket:

podman info

When you get under the key remote socket output like this, its already enabled:

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

If it's not enabled please follow this tutorialโ  to enable it.

Once you have the podman remote socket you can run Dozzle on podman.

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

โ Security

Dozzle supports file based authentication and forward proxy like Autheliaโ . These are documented at https://dozzle.dev/guide/authenticationโ .

โ Analytics collected

Dozzle collects anonymous user configurations using Google Analytics. Why? Dozzle is an open source project with no funding. As a result, there is no time to do user studies of Dozzle. Analytics is collected to prioritize features and fixes based on how people use Dozzle. This data is completely public and can be viewed live using Data Studio dashboardโ .

If you do not want to be tracked at all, see the --no-analytics flag below.

โ Environment variables and configuration

Dozzle follows the 12-factorโ  model. Configurations can use the CLI flags or environment variables. The table below outlines all supported options and their respective env vars.

FlagEnv VariableDefault
--addrDOZZLE_ADDR:8080
--baseDOZZLE_BASE/
--hostnameDOZZLE_HOSTNAME""
--levelDOZZLE_LEVELinfo
--auth-providerDOZZLE_AUTH_PROVIDERnone
--auth-header-userDOZZLE_AUTH_HEADER_USERRemote-User
--auth-header-emailDOZZLE_AUTH_HEADER_EMAILRemote-Email
--auth-header-nameDOZZLE_AUTH_HEADER_NAMERemote-Name
--enable-actionsDOZZLE_ENABLE_ACTIONSfalse
--wait-for-docker-secondsDOZZLE_WAIT_FOR_DOCKER_SECONDS0
--filterDOZZLE_FILTER""
--no-analyticsDOZZLE_NO_ANALYTICSfalse
--remote-hostDOZZLE_REMOTE_HOST

โ Support

There are many ways you can support Dozzle:

Buy Me A Coffee

โ License

MITโ 

โ Building

To Build and test locally:

  1. Install NodeJsโ  and pnpmโ .
  2. Install Goโ .
  3. Install reflexโ  with go install github.com/cespare/reflex@latest.
  4. Install node modules pnpm install.
  5. Do pnpm dev

Tag summary

Content type

Image

Digest

sha256:974ff7f6aโ€ฆ

Size

19.1 MB

Last updated

about 19 hours ago

Requires Docker Desktop 4.37.1 or later.

This week's pulls

Pulls:

1,693,481

Last week