Skip to main content

Terminal Server Dashboard - Ubuntu Server Management Tool

Project description

Server Dashboard - Terminal UI for Ubuntu Server Management

A beautiful and powerful TUI (Terminal User Interface) application for monitoring and managing Ubuntu servers. Built with Python and urwid.

Features

System Monitoring

  • Real-time CPU usage monitoring
  • Memory (RAM) and Swap usage
  • Disk space information
  • System uptime
  • Load average

Process Management

  • List all running processes
  • Sort by CPU or memory usage
  • Kill processes (graceful or force)
  • Search processes by name

Systemd Services

  • List all systemd services
  • Filter by state (running/stopped/failed)
  • Start, stop, restart services
  • View service status and logs
  • Enable/disable services for boot

Docker Management

  • List all containers (running and stopped)
  • Container resource usage (CPU/Memory)
  • Start, stop, restart containers
  • Pause and unpause containers
  • View container logs
  • List images and volumes
  • Docker system info

Kubernetes Management

  • List pods in namespace
  • View pod status and restarts
  • Container information
  • View pod logs
  • Scale deployments
  • Delete pods
  • Cluster information

Log Viewer

  • System logs (journalctl)
  • Kernel logs (dmesg)
  • Service-specific logs
  • Search and filter logs
  • Color-coded log levels

Requirements

  • Python 3.8+
  • Ubuntu Linux (or any systemd-based Linux)
  • Optional: Docker, Kubernetes cluster

Installation

# Clone or copy the project
cd server-dashboard

# Install dependencies
pip install -r requirements.txt

Optional Dependencies

For Docker support:

pip install docker>=6.1.3

For Kubernetes support:

pip install kubernetes>=28.1.0

Usage

Run the dashboard:

python main.py

Keyboard Shortcuts

Key Action
q or Ctrl+C Quit application
r Refresh current screen
s System overview
p Process list
v Services (systemd)
d Docker containers
K Kubernetes
l Log viewer
h or ? Help
1-7 Jump to screen
k Kill process
Enter Execute action

Screenshots

The dashboard features a clean, terminal-based interface with:

  • Header showing CPU, RAM, and uptime
  • Left sidebar menu for navigation
  • Main content area with detailed information
  • Color-coded status indicators
  • Footer with keyboard shortcuts

Project Structure

server-dashboard/
├── main.py                 # Entry point
├── config.py               # Configuration
├── requirements.txt         # Python dependencies
├── app/
│   ├── __init__.py
│   ├── modules/
│   │   ├── system_monitor.py    # CPU, RAM, disk monitoring
│   │   ├── process_monitor.py   # Process listing and management
│   │   ├── service_manager.py   # Systemd services
│   │   ├── docker_manager.py    # Docker containers
│   │   ├── k8s_manager.py       # Kubernetes
│   │   └── log_viewer.py        # Log viewing
│   └── ui/
│       ├── __init__.py
│       ├── colors.py            # Color definitions
│       └── dashboard.py         # Main UI
└── README.md

Color Legend

  • Green: Good/Low usage, Running
  • Yellow: Warning/Medium usage
  • Red: Critical/High usage, Failed
  • Gray: Stopped, Inactive

Troubleshooting

Permission Denied

Some operations require root privileges. Run with:

sudo python main.py

Docker Not Found

Ensure Docker is installed and running:

docker --version
sudo systemctl status docker

Kubernetes Not Configured

Ensure kubectl is configured:

kubectl cluster-info

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vipe_server_dashboard-1.0.0.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vipe_server_dashboard-1.0.0-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file vipe_server_dashboard-1.0.0.tar.gz.

File metadata

  • Download URL: vipe_server_dashboard-1.0.0.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for vipe_server_dashboard-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a59d7c5d8e6930318fa3f64be65c1131cc36242fa81a89d74b6e2a6456c71803
MD5 96f8f6a853d16a6dfb9b579aac7ccf23
BLAKE2b-256 44d542eff9bf9d254f1f60a6d71eb1d65bbad27570eb351daad076f6b61a320f

See more details on using hashes here.

File details

Details for the file vipe_server_dashboard-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for vipe_server_dashboard-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 95d33c739f97814aaa1b657e5d5cff0eeee6572357dd122d00a5a6d339b01556
MD5 58a22a766f699494dcd7419560dfd7d1
BLAKE2b-256 8a8c981129aa3abf6da860f5e8b5f8bb0a8aedf492949733261f60cf68791103

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page