Skip to content

matifanger/simple-docker-monitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐳 Docker Monitor

A sleek, real-time Docker container monitoring dashboard built with Python and modern web technologies.

Docker Monitor Dashboard

✨ Features

  • Real-time monitoring of Docker containers
  • System-wide Docker resource usage
  • Container grouping by compose project
  • Auto-refresh every 15 seconds
  • Clean, modern UI with dark mode
  • Mobile responsive design
  • Change the name of container group

🚀 Quick Start

  1. Clone the repository:
git clone https://github.com/matifanger/simple-docker-monitor.git
cd simple-docker-monitor
  1. Create and activate a virtual environment (optional but recommended):
python -m venv venv
source venv/bin/activate  # On Windows: .\venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up environment variables:
cp .env.example .env
  1. Run the application:
python app.py
  1. Open your browser and navigate to http://localhost:3000

🔧 Configuration

The following environment variables can be configured in .env:

  • DOCKER_HOST - Docker daemon socket (default: unix:///var/run/docker.sock)
  • DEVELOPMENT - Enable development mode (default: false)

🚀 Deploy Using Docker

  1. Make sure Docker is installed on your system.
    Download Docker

  2. Clone the repository and navigate to the project directory:

    git clone https://github.com/matifanger/simple-docker-monitor.git
    cd simple-docker-monitor
    
  3. Build the Docker image:

docker build -t simple-docker-monitor .
  1. Run the Docker container:
docker run -d -p 3000:3000 -v /var/run/docker.sock:/var/run/docker.sock simple-docker-monitor

🛠️ Tech Stack

  • Backend: Python, Flask
  • Frontend: TailwindCSS, JavaScript
  • Container Management: Docker SDK for Python

🎯 Improvement Checklist

High Priority

  • Add authentication system
  • Connect via SSH
  • Implement container logs viewing
  • Add container start/stop/restart controls
  • Implement error handling for Docker connection issues
  • Add container health check status

Medium Priority

  • Add historical data tracking
  • Implement container resource usage graphs
  • Add container configuration viewing
  • Implement search and filtering
  • Add container network statistics

Low Priority

  • Add light/dark theme toggle
  • Implement custom refresh intervals
  • Add container environment variables viewing
  • Implement container creation from UI
  • Add export functionality for container stats

Technical Debt

  • Add comprehensive test coverage
  • Implement proper logging system
  • Add API documentation
  • Optimize Docker stats collection
  • Implement proper error boundaries

Bugs

  • When changing the name of the container, it is not immediate upon refresh
  • Logo is not loading when deploying via Dockerfile
  • CPU and RAM cards overflows if container name is too large

📝 License

MIT License - feel free to use this project however you'd like!

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published