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.1.tar.gz (24.9 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.1-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vipe_server_dashboard-1.0.1.tar.gz
  • Upload date:
  • Size: 24.9 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.1.tar.gz
Algorithm Hash digest
SHA256 c11ad2c65e02bf06c91021a5bacd3c67569ca238cea684d4df54c04e47d0832d
MD5 a3701827fb6136d97e99dc2271f72f42
BLAKE2b-256 d7c0bf585fb71b778ec30af85387f4ef8d3bf69a7e8437f5c1873561038fc88f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for vipe_server_dashboard-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 beb1299dcc5928bf705804c48e1e33fe9e1b6a90232d5782183d8544838e65b4
MD5 8cd3acaca710b69a2001ffb772d9600d
BLAKE2b-256 617739fdab4eb35f41daf55ca907df24ab3ca185757d5243fd6e79a94c5d515f

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