High-performance, real-time Docker log viewer built for teams.
Lightweight. Secure. Modern. Built for real-world Docker environments.
DockLog provides real-time log streaming, RBAC, audit logging, system monitoring, and container management in a clean modern interface.
Think of it as a more powerful and team-friendly alternative to Dozzle.
β‘ Average setup time: under 2 minutes.
DockLog focuses on fast deployment, low resource usage, and team-safe Docker visibility without requiring heavyweight observability tooling.
Built for developers who want real-time Docker visibility with modern operational workflows.
Real-time Docker monitoring with lightweight system metrics and container controls.
Monitor, control, and manage containers with fast operational actions.
Granular container-level permissions with wildcard and regex-based access control.
Track administrative actions and security events with a complete audit trail.
Most Docker log viewers are built for a single administrator.
DockLog is built for the entire team.
-
Team-First Security
Give developers access only to the containers they need using wildcard and regex-based RBAC. -
Audit Everything
Track exactly who restarted, stopped, or modified containers with full audit logging. -
Zero-Config Deployment
No external database. No large configuration files. Just run the container and start monitoring. -
Performance Without Compromise
Written in Go for extremely low memory and CPU usage. -
Modern Developer Experience
Fast, responsive UI designed for operational workflows.
- WebSocket-based live streaming
- Infinite scrolling through millions of log lines
- Smart auto-scroll behavior
- Manual history loading with progress tracking
- RFC3339Nano precision timestamp filtering
- Automatic reconnection handling
- Search and filtering support
- Wildcard container permissions (
backend-*) - Full regex support (
^prod-.*$) - Per-user action permissions
- Restricted vs. global visibility
- Staff account management
- Container-level access isolation
- Full audit trail for administrative actions
- First-login forced password reset
- JWT authentication
- Encrypted local storage
- Connectivity monitoring
- Backend availability detection
- Global host CPU and memory monitoring
- Historical usage analytics
- Assigned core detection
- Container memory profiling
- Normalized CPU utilization
- Real-time system metrics
- Lightweight Go backend
- Low memory footprint (~30MB to 50MB typical)
- Handles thousands of log lines per second
- Embedded frontend for single-binary deployment
- Optimized WebSocket streaming
- Fast container filtering
| Metric | Value |
|---|---|
| RAM Usage | ~30MB to 50MB |
| Backend | Go 1.24 |
| Frontend | Vue 3 |
| Log Throughput | 10k+ lines/sec |
| Deployment Type | Single Container |
| Feature | DockLog | Dozzle | Loki/Grafana |
|---|---|---|---|
| Real-time logs | β | β | β |
| Multi-user RBAC | β | β | Advanced setup |
| Wildcard permissions | β | β | Complex |
| Audit logging | β | β | Partial |
| Lightweight VPS usage | β | β | β |
| Single-container deployment | β | β | β |
| Historical observability | Limited | Limited | β |
| Kubernetes observability | Planned | β | β |
| Layer | Technology |
|---|---|
| Backend | Go 1.24 + Echo |
| Frontend | Vue 3 + Vite |
| Streaming | WebSockets |
| Database | SQLite |
| Container Engine | Docker SDK |
| Styling | Vanilla CSS Design System |
| Variable | Description | Default |
|---|---|---|
PORT |
Application port | 8000 |
SECRET_KEY |
JWT signing secret | secret-key-change-this |
DB_PATH |
SQLite database path | docklog.db |
DOCKER_HOST |
Docker daemon socket | unix:///var/run/docker.sock |
openssl rand -base64 32- Full container visibility
- User management
- Audit log access
- Full container control
Container visibility is controlled using patterns such as:
redis
backend-*
prod-*, *-app
^prod-.*$
Users only see containers matching their assigned rules.
| Username | Password |
|---|---|
admin |
admin123 |
Warning
Change the default administrator password immediately after first login.
version: "3.8"
services:
docklog:
image: aimldev/docklog:latest
container_name: docklog
ports:
- "8888:8000"
environment:
- SECRET_KEY=your-secure-key-here
- DB_PATH=/app/data/docklog.db
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/app/data
restart: unless-stoppedStart DockLog:
docker compose up -dOpen:
http://localhost:8888
docker run -d \
--name docklog \
-p 8888:8000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(pwd)/data:/app/data \
-e SECRET_KEY=your-secure-key-here \
-e DB_PATH=/app/data/docklog.db \
--restart unless-stopped \
aimldev/docklog:latestDockLog requires access to:
/var/run/docker.sock
This effectively grants Docker API access to the application.
Recommended production setup:
- place behind Nginx or Traefik
- enable HTTPS
- restrict public access
- expose only trusted networks
- use strong administrator credentials
- rotate
SECRET_KEYperiodically
| Path | Description |
|---|---|
main.go |
Main Go server |
frontend/ |
Vue 3 frontend |
db/ |
SQLite initialization |
.github/workflows/ |
CI/CD pipelines |
docs/ |
Project documentation |
Planned features:
- log retention controls
- notifications
- API tokens
- multi-host support
- Kubernetes support
- external authentication providers
- organization/team management
Contributions, issues, and feature requests are welcome.
- Fork the repository
- Create a feature branch
- Submit a pull request
https://hub.docker.com/r/aimldev/docklog
DockLog is open-source software licensed under the MIT License.
You are free to:
- use
- modify
- distribute
- self-host
- commercialize
See the LICENSE file for full details.
If DockLog helps your workflow:
- star the repository
- report bugs
- contribute improvements
- share feedback
- suggest new features
Built for developers who want real-time Docker visibility without deploying an observability cathedral.




