What The Heck's A Dozzle?
Putting The "Rozzle Dozzel" Into Container Logs
Intro and Musings
I might have a container addiction. I think I’m up to 40 or so. But, man what a ride. My Docker journey has been amazing and I’m so close to where I want to be. But you know what’s not fun about containers? Logs. Man, that’s tedious. Whether it’s Portainer bouncing you out of a log after you restart a container, or trying to avoid going blind by staring and trying to parse out the logs via CLI…BLEH. Once again, the universe provides with Dozzle.
Dozzle!
Ok so what is Dozzle? It’s a container (shocker) that simply streams the logs from other containers! It doesn’t store them, it streams. And you can search them all at once via regex, regular text, and I think sql or some such madness. And it also has a agent mode so you can streamline it all to one GUI.
Here what it looks like:
So the top one is the host the GUI is on, and the three “satellites” is where I have agents reporting. Right off the bat, it shows container stats, which is rad. Let’s search real quick, using the “search” under the lil Dozzle bug. This will return containers.
Now if I click on that container, in the upper right I get a menu. It’s a bit vague that it’s there. There’s a lot to use here.
In the search menu, you can filter and search the current log as well.
That’s awesome, but check this out,
You can get ALL the logs in one live, searchable view. But wait, that’s not all!
YOU CAN STACK MULTIPLE CONTAINERS IN ONE VIEW FROM DIFFERNT HOSTS!
And you can pin containers as favorites…
Finally in the settings...
Seeing the logs of containers that are stopped is actually surprisingly useful.
Ok enough gushing, let’s get into the stack configs.
Config Time!
Ok, my setup is fairly simple. I did find the agent config to be a bit confusing at first, so I’ll show both examples.
Full details with all options are here: https://dozzle.dev/guide/getting-started
Let’s split this into sections.
NOTE: I’m using WUD for updates, so I use tagged releases. Feel free to replace with “latest” if that’s your jam.
Pretty basic, though I changed the sock to be RO. I don’t have a need or want in my use case for any actions by Dozzle.
For the environment variables, see the remote agent section. The agents are comma separated. As of right now Dozzle doesn’t like starting if the agents aren’t reachable so maybe set them up first.
AGENT CONFIG
The agent config is pretty straightforward. Note the port and “agent” command.
Full examples are on my GitHub.
Conclusion
Not much more to say, apart from finding a solution that meets another need I had. Pulse for detailed host usage/alerts, Kuma for easy uptime alerts, and now Dozzle for easy consumption of container logs! I think the only thing now missing is some way to gather all the patch information in one place about all my Linux hosts.
I don’t know, sounds like Rambling Nonsense to me. ;)
Until next time.



















