A comprehensive system monitoring web application with an embedded terminal, built with Node.js and Docker.
- Real-time System Monitoring: CPU, Memory, Disk usage
- Process Monitoring: Top processes with CPU usage
- Embedded Terminal: Full terminal access via web interface
- Modern UI: Responsive design with real-time updates
- Docker Support: Easy deployment with Docker Compose
Production Mode:
docker-compose up --buildDevelopment Mode (with hot-reload):
# Stop any running containers first
docker-compose down
# Start in development mode
docker-compose -f docker-compose.dev.yml up --buildFor more details, see docs/DEVELOPMENT.md
Use the secure Compose file to run without host networking and with minimal capabilities. Some host-control features may be limited in this mode.
docker compose -f docker-compose.secure.yml up --build -d-
Install dependencies:
npm install
-
Start the application:
# Production mode npm start # Development mode with hot-reload npm run dev
-
Access the application: Open your browser and go to
http://localhost:3000
GET /api/system- Complete system informationGET /api/processes- Running processesGET /api/load- CPU load and temperature
terminal:create- Create new terminal sessionterminal:input- Send input to terminalterminal:resize- Resize terminalsystem:update- Real-time system updates
- The application runs with privileged access to monitor system resources
- Terminal access provides full system control - use with caution
- Consider firewall rules for production deployments
- Docker and Docker Compose
- Node.js 18+ (for manual installation)
- Linux system (for system monitoring features)
MIT License