A sleek, real-time Docker container monitoring dashboard built with Python and modern web technologies.
- 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
- Clone the repository:
git clone https://github.com/matifanger/simple-docker-monitor.git
cd simple-docker-monitor
- Create and activate a virtual environment (optional but recommended):
python -m venv venv
source venv/bin/activate # On Windows: .\venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables:
cp .env.example .env
- Run the application:
python app.py
- Open your browser and navigate to
http://localhost:3000
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)
-
Make sure Docker is installed on your system.
Download Docker -
Clone the repository and navigate to the project directory:
git clone https://github.com/matifanger/simple-docker-monitor.git cd simple-docker-monitor
-
Build the Docker image:
docker build -t simple-docker-monitor .
- Run the Docker container:
docker run -d -p 3000:3000 -v /var/run/docker.sock:/var/run/docker.sock simple-docker-monitor
- Backend: Python, Flask
- Frontend: TailwindCSS, JavaScript
- Container Management: Docker SDK for Python
- 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
- Add historical data tracking
- Implement container resource usage graphs
- Add container configuration viewing
- Implement search and filtering
- Add container network statistics
- 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
- Add comprehensive test coverage
- Implement proper logging system
- Add API documentation
- Optimize Docker stats collection
- Implement proper error boundaries
- 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
MIT License - feel free to use this project however you'd like!
Contributions are welcome! Please feel free to submit a Pull Request.