Skip to content

dozzle

dozzle provides a simple web UI for viewing container logs.

dozzle

Prepare

Pull the image

podman pull docker.io/amir20/dozzle:latest

Create directories to store variables and persistent container data

mkdir -p $HOME/apps/{variables,container_data}

Create files to store variables and persistent container data

touch $HOME/apps/variables/dozzle.env
mkdir -p $HOME/apps/container_data/dozzle

Edit environment file

Edit the environment file and paste your default values for this service:

nano $HOME/apps/variables/dozzle.env

Example contents:

# Container defaults
TZ=Europe/Athens

Installation

Create .container in home folder

touch $HOME/.config/containers/systemd/dozzle.container

Edit the file and paste this content

# dozzle.container
[Container]
ContainerName=dozzle
HostName=dozzle
Image=docker.io/amir20/dozzle:latest
AutoUpdate=registry
Environment=TZ=Europe/Athens
Network=skynet.network
Volume=/run/user/1000/podman/podman.sock:/var/run/docker.sock
[Service]
Restart=always
TimeoutStartSec=300
[Install]
WantedBy=default.target
Reload systemd user daemons & start the container.

systemctl --user daemon-reload
systemctl --user start dozzle
systemctl --user status dozzle

Usage

Open the service in your browser (configure nginx as needed).

Troubleshooting

Check service status & logs

systemctl --user status dozzle
podman ps
podman logs -f dozzle

Configuration of Nginx (Reverse Proxy)

Create nginx conf.

touch $HOME/apps/container_data/nginx/$HOSTNAMElogs.conf

Configuration for nginx conf for port 80.

server {
  listen 80;
  server_name <hostname>logs.skynet.lan;
    access_log /var/log/nginx/dozzle_access.log;
    error_log /var/log/nginx/dozzle_error.log;
    location / {
        proxy_pass http://dozzle:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

Restart Nginx

systemctl --user restart nginx

Usage

Open the service URL: http://logs.skynet.lan

Troubleshooting

If reverse proxy issues occur, check Nginx logs and container health:

journalctl --user -u nginx -n 200
podman ps
podman logs -f dozzle