A comprehensive Docker container monitoring and management platform with real-time monitoring, intelligent auto-restart, multi-channel alerting, and complete event logging.
- Multi-Host Monitoring - Monitor containers across unlimited Docker hosts (local and remote)
- Real-Time Dashboard - Drag-and-drop customizable widgets with WebSocket updates
- Real-Time Statistics - Live CPU, memory, network metrics
- Real-Time Container Logs - View logs from multiple containers simultaneously with live updates
- Event Viewer - Comprehensive audit trail with filtering, search, and real-time updates
- Intelligent Auto-Restart - Per-container auto-restart with configurable retry logic
- Advanced Alerting - Discord, Slack, Telegram, Pushover, Gotify, SMTP with customizable templates
- Container Tagging - Automatic tag derivation from Docker labels with user-defined tags
- Bulk Operations - Start, stop, restart multiple containers simultaneously with progress tracking
- Automatic Updates - Detect and execute container image updates on schedule
- HTTP/HTTPS Health Checks - Custom endpoint monitoring with auto-restart on failure
- Blackout Windows - Schedule maintenance periods to suppress alerts
- Secure by Design - Session-based auth, rate limiting, mTLS for remote hosts, Alpine Linux base
- Complete User Guide - Full documentation
- Quick Start - Get started in 5 minutes
- Installation - Docker, unRAID, Synology, QNAP
- Configuration - Alerts, notifications, settings
- Security - Best practices and mTLS setup
- Remote Monitoring - Monitor remote Docker hosts
- Event Viewer - Comprehensive audit trail with filtering
- Container Logs - Real-time multi-container log viewer
- API Reference - REST and WebSocket APIs
- FAQ - Frequently asked questions
- Troubleshooting - Common issues
- Report Issues - Found a bug?
- Discussions - Ask questions, share ideas
- Wiki - Complete documentation
- Star on GitHub - Show your support!
- Buy Me A Coffee - Support the project
- Full backend API with FastAPI
- WebSocket real-time updates
- Multi-channel notifications
- Comprehensive event logging
- Event log viewer with filtering and search
- Real-time container logs viewer (multi-container support)
- Drag-and-drop dashboard
- Auto-restart with retry logic
- Real-time performance metrics (CPU, memory, network, disk I/O)
- Host-level and container-level statistics
- TLS/mTLS support for secure remote Docker connections
- Optimized streaming architecture with Go backend
- Modern React 18 frontend with TypeScript
- Container tagging system with auto-derivation from Docker labels
- Bulk operations (start/stop/restart multiple containers)
- Automatic container updates with version tracking and scheduling
- HTTP/HTTPS health checks with auto-restart on failure
- Blackout windows for maintenance periods
- Advanced alert rule engine with metric and event triggers
- Alpine Linux base image with OpenSSL 3.x
- Go 1.23 stats service for high-performance metrics streaming
- Enhanced security and modern architecture
- Historical metrics graphs with trend analysis
- Configuration export/import
- Mobile-friendly responsive UI
- DockMon Agent for remote Docker hosts (avoid exposing Docker socket)
- Advanced RBAC and multi-user permissions
See the full roadmap for details.
- Python 3.13 with FastAPI and async/await
- Alpine Linux 3.x container base (reduced attack surface)
- OpenSSL 3.x for modern cryptography
- SQLAlchemy 2.0 with Alembic migrations
- Go 1.23 stats service for real-time metrics streaming
- React 18.3 with TypeScript (strict mode, zero
any) - Vite for fast development builds
- TanStack Table for data tables
- React Grid Layout for dashboard customization
- Tailwind CSS for styling
- Multi-stage Docker build - Go stats + React frontend + Python backend
- Supervisor for process management
- Nginx reverse proxy with SSL/TLS
- WebSocket for real-time updates
- Health checks for all services
- Alert Rules: Old alert rules must be recreated using the new alert system
- mTLS Certificates: Regenerate certificates due to Alpine's stricter OpenSSL 3.x requirements
- Database Schema: Automatic one-time migration from v1.1.3 to v2.0.0
- ✅ Hosts and their configurations
- ✅ Containers and container history
- ✅ Event logs and audit trail
- ✅ User accounts and preferences
- Regenerate mTLS certificates for remote hosts (see mTLS Setup Guide)
- Recreate alert rules using the new alert system
- Verify host connections after upgrade
See the Migration Guide for detailed instructions.
Contributions are welcome! Here's how you can help:
- Report bugs via GitHub Issues
- Suggest features in Discussions
- Improve documentation (edit the Wiki)
- Submit pull requests (see Contributing Guide)
Want to contribute code or run DockMon in development mode?
See Development Setup for:
- Local development environment setup
- Architecture overview
- Running tests
- Building from source
MIT License - see LICENSE file for details.
Created by darthnorse
This project has been developed with vibe coding and AI assistance using Claude Code. The codebase includes clean, well-documented code with proper error handling, comprehensive testing considerations, modern async/await patterns, robust database design, and production-ready deployment configurations.
If DockMon helps you, please consider giving it a star or supporting the project!