πŸ“Ÿ Terminal User Interface (TUI)

The Servin Terminal User Interface provides a simple, menu-driven experience for container management directly in your terminal. Perfect for server environments, SSH sessions, and users who prefer command-line workflows.

πŸš€ Getting Started

Launching the TUI

# Start the terminal interface
servin-desktop

# Alternative command
servin desktop
  • Number Keys - Select menu options
  • Enter - Confirm selection
  • Type responses - When prompted for input

πŸ–₯️ Interface Overview

╔════════════════════════════════════════════════════════════════╗
β•‘                         Servin Desktop                         β•‘
β•‘                Container Runtime Management                    β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Main Menu ────────────────────┐
β”‚  1. Container Management                          β”‚
β”‚  2. Image Management                              β”‚
β”‚  3. CRI Server Control                            β”‚
β”‚  4. Volume Management                             β”‚
β”‚  5. Registry Operations                           β”‚
β”‚  6. System Information                            β”‚
β”‚  7. Exit                                          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Select an option:

πŸ“¦ Container Management

Container Operations Menu

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Container Management ──────────────┐
β”‚  1. List Containers                               β”‚
β”‚  2. Run New Container                             β”‚
β”‚  3. Start Container                               β”‚
β”‚  4. Stop Container                                β”‚
β”‚  5. Remove Container                              β”‚
β”‚  6. View Container Logs                           β”‚
β”‚  7. Execute Command in Container                  β”‚
β”‚  8. Back to Main Menu                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Available Operations

  • List Containers: Display all containers with status
  • Run New Container: Create and start a new container
  • Start Container: Start a stopped container by ID/name
  • Stop Container: Stop a running container
  • Remove Container: Delete a container
  • View Logs: Show container output logs
  • Execute Command: Run commands inside containers

πŸ–ΌοΈ Image Management

Image Operations Menu

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Image Management ─────────────────┐
β”‚  1. List Images                                   β”‚
β”‚  2. Import Image                                  β”‚
β”‚  3. Remove Image                                  β”‚
β”‚  4. Tag Image                                     β”‚
β”‚  5. Inspect Image                                 β”‚
β”‚  6. Build Image                                   β”‚
β”‚  7. Back to Main Menu                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Available Operations

  • List Images: Show all available images
  • Import Image: Import images from tar files
  • Remove Image: Delete unused images
  • Tag Image: Add tags to existing images
  • Inspect Image: View detailed image information
  • Build Image: Build images from Dockerfile

πŸ”— CRI Server Control

CRI Server Menu

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ CRI Server ─────────────────────┐
β”‚  1. Start CRI Server                             β”‚
β”‚  2. Check CRI Server Status                      β”‚
β”‚  3. Test CRI Connection                           β”‚
β”‚  4. View CRI Endpoints                            β”‚
β”‚  5. Back to Main Menu                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Available Operations

  • Start CRI Server: Launch Kubernetes CRI server
  • Check Status: Verify CRI server status
  • Test Connection: Test CRI connectivity
  • View Endpoints: Show available CRI API endpoints

πŸ’Ύ Volume Management

Volume Operations Menu

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Volume Management ─────────────────┐
β”‚  1. List Volumes                                  β”‚
β”‚  2. Create Volume                                 β”‚
β”‚  3. Remove Volume                                 β”‚
β”‚  4. Inspect Volume                                β”‚
β”‚  5. Remove All Volumes                            β”‚
β”‚  6. Back to Main Menu                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Available Operations

  • List Volumes: Display all created volumes
  • Create Volume: Create new storage volumes
  • Remove Volume: Delete specific volumes
  • Inspect Volume: View volume details
  • Remove All: Clean up all volumes

πŸ“‘ Registry Operations

Registry Menu

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Registry Operations ────────────────┐
β”‚  1. Start Local Registry                          β”‚
β”‚  2. Stop Local Registry                           β”‚
β”‚  3. Push Image to Registry                        β”‚
β”‚  4. Pull Image from Registry                      β”‚
β”‚  5. List Registries                               β”‚
β”‚  6. Back to Main Menu                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Available Operations

  • Start Registry: Launch local registry server
  • Stop Registry: Shutdown registry server
  • Push Image: Upload images to registry
  • Pull Image: Download images from registry
  • List Registries: Show configured registries

πŸ“Š System Information

System Overview

╔════════════════ System Information ═══════════════╗
β•‘ Servin Runtime Information:                        β•‘
β•‘ Version: 1.0.0                                     β•‘
β•‘ Platform: Linux/Windows/macOS                      β•‘
β•‘ Time: 2025-09-16 15:04:05                         β•‘
β•‘                                                    β•‘
β•‘ Container Statistics:                              β•‘
β•‘ Running: 5    Stopped: 3    Total: 8              β•‘
β•‘                                                    β•‘
β•‘ Image Statistics:                                  β•‘
β•‘ Local Images: 12    Total Size: 2.4GB             β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

πŸ”§ Usage Examples

Starting a Container

  1. Select 1 (Container Management)
  2. Select 2 (Run New Container)
  3. Enter image name: nginx
  4. Enter container name: web-server
  5. Enter command: (optional)

Viewing Logs

  1. Go to Container Management
  2. Select 6 (View Container Logs)
  3. Enter container ID or name
  4. Logs will be displayed

Managing Images

  1. Select 2 (Image Management)
  2. Select 1 (List Images) to see available images
  3. Use other options to manage images

βš™οΈ Technical Features

Simple Navigation

  • Menu-driven interface: Easy number-based selection
  • Back navigation: Return to previous menus
  • Input prompts: Clear instructions for user input
  • Error handling: Helpful error messages

Command Integration

  • Direct CLI integration: Uses servin CLI commands
  • Real-time output: Shows command results immediately
  • Platform support: Works on Windows, Linux, and macOS

User Experience

  • ASCII art headers: Professional appearance
  • Consistent formatting: Clean, readable menus
  • Interactive prompts: Clear input requests
  • Status feedback: Command execution results β”‚ πŸ’Ύ Memory: 128MB/512MB (25%) β”‚ β”‚ πŸ’½ Disk I/O: 1.2MB read, 850KB write β”‚ β”‚ 🌐 Network I/O: 15MB in, 25MB out β”‚ β”‚ β”‚ β”‚ Environment Variables: β”‚ β”‚ πŸ”§ NODE_ENV=production β”‚ β”‚ πŸ”§ PORT=3000 β”‚ β”‚ πŸ”§ DATABASE_URL=mysql://db:3306/app β”‚ β”‚ β”‚ β”‚ Volumes: β”‚ β”‚ πŸ’Ύ /var/www/html β†’ /app/public (ro) β”‚ β”‚ πŸ’Ύ app-logs β†’ /var/log/nginx β”‚ β”‚ β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ [Logs] [Exec] [Files] [Stats] [Edit] [Actions] β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ```

Container Actions Menu

  • πŸ”„ Lifecycle
    • ▢️ Start - Start stopped container
    • ⏹️ Stop - Gracefully stop running container
    • πŸ”„ Restart - Restart container
    • ⏸️ Pause - Pause container execution
    • ▢️ Unpause - Resume paused container
    • πŸ’€ Kill - Force stop container
  • πŸ“Š Monitoring
    • πŸ“„ View Logs - Real-time log streaming
    • πŸ“ˆ Live Stats - CPU, memory, network usage
    • πŸ” Inspect - Detailed configuration view
    • πŸ“‹ Processes - Running processes inside container
  • πŸ”§ Management
    • πŸ’» Execute Shell - Interactive shell access
    • πŸ“ Browse Files - Container filesystem explorer
    • 🏷️ Rename - Change container name
    • πŸ“ Edit Config - Modify container settings
    • πŸ—‘οΈ Remove - Delete container

πŸ–ΌοΈ Image Management

Image List View

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Images ─────────────────────┐
β”‚ Search: [ubuntu______] πŸ” Sort: [Name_________] β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Repository        β”‚ Tag     β”‚ Size   β”‚ Created  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ nginx             β”‚ latest  β”‚ 142MB  β”‚ 2 days   β”‚
β”‚ nginx             β”‚ 1.21    β”‚ 140MB  β”‚ 1 week   β”‚
β”‚ ubuntu            β”‚ latest  β”‚ 72MB   β”‚ 3 days   β”‚
β”‚ ubuntu            β”‚ 20.04   β”‚ 72MB   β”‚ 1 week   β”‚
β”‚ node              β”‚ 16      β”‚ 908MB  β”‚ 5 days   β”‚
β”‚ mysql             β”‚ 8.0     β”‚ 516MB  β”‚ 1 week   β”‚
β”‚ alpine            β”‚ latest  β”‚ 5MB    β”‚ 6 days   β”‚
β”‚ πŸ“¦ <none>         β”‚ <none>  β”‚ 1.2GB  β”‚ 2 weeks  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ ↑/↓: Navigate | Enter: Details | Space: Select β”‚
β”‚ p: Pull | b: Build | t: Tag | h: Push | d: Del β”‚
β”‚ r: Run | s: Save | l: Load | i: Inspect        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Image Details Panel

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Image Details: nginx:latest ──────────────┐
β”‚                                                           β”‚
β”‚ Basic Information:                                        β”‚
β”‚ πŸ†” ID: sha256:a1b2c3...                                   β”‚
β”‚ 🏷️  Repository: nginx                                    β”‚
β”‚ πŸ”– Tag: latest                                           β”‚
β”‚ πŸ“¦ Size: 142MB (Virtual: 142MB)                          β”‚
β”‚ πŸ“… Created: 2 days ago                                   β”‚
β”‚ πŸ‘€ Author: NGINX Docker Maintainers                      β”‚
β”‚                                                           β”‚
β”‚ Configuration:                                            β”‚
β”‚ πŸšͺ Exposed Ports: 80/tcp                                β”‚
β”‚ πŸ’» Default CMD: ["nginx", "-g", "daemon off;"]          β”‚
β”‚ πŸ“ Working Dir: /                                        β”‚
β”‚ πŸ‘€ User: root                                            β”‚
β”‚ πŸ”§ Env: PATH=/usr/local/sbin:/usr/local/bin...          β”‚
β”‚                                                           β”‚
β”‚ Layer Information:                                        β”‚
β”‚ πŸ“„ Layers: 6                                             β”‚
β”‚ πŸ”— Parent: sha256:b1c2d3...                              β”‚
β”‚ πŸ“Š Architecture: amd64                                    β”‚
β”‚ πŸ–₯️  OS: linux                                            β”‚
β”‚                                                           β”‚
β”‚ Labels:                                                   β”‚
β”‚ 🏷️  maintainer=NGINX Docker Maintainers                 β”‚
β”‚ 🏷️  org.opencontainers.image.version=1.21.6            β”‚
β”‚                                                           β”‚
β”‚ Usage:                                                    β”‚
β”‚ πŸ“¦ Used by: 3 containers                                 β”‚
β”‚ πŸ”— Children: 2 images                                    β”‚
β”‚                                                           β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ [History] [Layers] [Run] [Tag] [Push] [Export] [Delete] β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Image Actions

  • πŸ“₯ Registry Operations
    • πŸ“€ Pull - Download image from registry
    • πŸ“¦ Push - Upload image to registry
    • πŸ” Search - Search registry for images
    • πŸ”‘ Login - Authenticate with registry
  • πŸ”¨ Build Operations
    • πŸ—οΈ Build - Build image from Dockerfile
    • 🏷️ Tag - Add tags to image
    • πŸ’Ύ Save - Export image to tar file
    • πŸ“ Load - Import image from tar file
  • πŸš€ Container Operations
    • ▢️ Run - Create and start container
    • πŸ”§ Create - Create container without starting
    • πŸ“‹ Inspect - View detailed image information
    • πŸ“œ History - View image layer history

πŸ’Ύ Volume Management

Volume List View

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Volumes ──────────────────────┐
β”‚ Search: [data_______] πŸ” Filter: [All_________] β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Name           β”‚ Driver β”‚ Size    β”‚ Mount Point  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ app-data       β”‚ local  β”‚ 2.1GB   β”‚ /var/lib/... β”‚
β”‚ db-storage     β”‚ local  β”‚ 890MB   β”‚ /var/lib/... β”‚
β”‚ logs-volume    β”‚ local  β”‚ 156MB   β”‚ /var/lib/... β”‚
β”‚ config-files   β”‚ local  β”‚ 12MB    β”‚ /var/lib/... β”‚
β”‚ πŸ”— shared-nfs  β”‚ nfs    β”‚ 15GB    β”‚ server:/data β”‚
β”‚ πŸ“¦ temp-cache  β”‚ local  β”‚ 500MB   β”‚ /var/lib/... β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ ↑/↓: Navigate | Enter: Details | Space: Select  β”‚
β”‚ c: Create | d: Delete | p: Prune | b: Backup    β”‚
β”‚ m: Mount | u: Unmount | i: Inspect              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Volume Actions

  • πŸ“¦ Lifecycle
    • πŸ†• Create - Create new volume
    • πŸ—‘οΈ Delete - Remove volume
    • 🧹 Prune - Remove unused volumes
    • πŸ“‹ Inspect - View volume details
  • πŸ”— Operations
    • πŸ“ Browse - Explore volume contents
    • πŸ’Ύ Backup - Create volume backup
    • πŸ“₯ Restore - Restore from backup
    • πŸ“Š Usage - Show space usage

🌐 Network Management

Network List View

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Networks ─────────────────────┐
β”‚ Search: [bridge____] πŸ” Filter: [All__________] β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Name        β”‚ Driver β”‚ Scope β”‚ Connected β”‚ Subnet β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ bridge      β”‚ bridge β”‚ local β”‚ 3         β”‚ 172... β”‚
β”‚ host        β”‚ host   β”‚ local β”‚ 0         β”‚ -      β”‚
β”‚ none        β”‚ null   β”‚ local β”‚ 0         β”‚ -      β”‚
β”‚ web-net     β”‚ bridge β”‚ local β”‚ 2         β”‚ 192... β”‚
β”‚ api-network β”‚ bridge β”‚ local β”‚ 4         β”‚ 10.... β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ ↑/↓: Navigate | Enter: Details | Space: Select   β”‚
β”‚ c: Create | d: Delete | p: Prune | o: Connect    β”‚
β”‚ x: Disconnect | i: Inspect                       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“Š System Information

System Overview

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ System Status ────────────────────┐
β”‚                                                       β”‚
β”‚ Runtime Information:                                  β”‚
β”‚ πŸ†” Version: Servin 1.0.0                             β”‚
β”‚ πŸ—οΈ  Build: go1.24.0 linux/amd64                      β”‚
β”‚ πŸ“… Started: 2024-01-15 10:30:15 (uptime: 2h 45m)    β”‚
β”‚ πŸ”Œ CRI Server: Active on port 10010                  β”‚
β”‚ πŸ“‘ API Server: Active on unix socket                 β”‚
β”‚                                                       β”‚
β”‚ Resource Summary:                                     β”‚
β”‚ πŸ“¦ Containers: 12 total (8 running, 3 stopped, 1 paused) β”‚
β”‚ πŸ–ΌοΈ  Images: 25 total (15 in use, 10 unused)          β”‚
β”‚ πŸ’Ύ Volumes: 8 total (6 mounted, 2 unmounted)         β”‚
β”‚ 🌐 Networks: 5 total (3 active, 2 inactive)          β”‚
β”‚                                                       β”‚
β”‚ Storage Usage:                                        β”‚
β”‚ πŸ“ Images: 4.2GB                                     β”‚
β”‚ πŸ“¦ Containers: 1.8GB                                 β”‚
β”‚ πŸ’Ύ Volumes: 3.5GB                                    β”‚
β”‚ πŸ—οΈ  Build Cache: 890MB                               β”‚
β”‚ πŸ“Š Total: 10.39GB                                    β”‚
β”‚                                                       β”‚
β”‚ Performance Metrics:                                  β”‚
β”‚ πŸ“Š CPU Usage: 15% (4 cores available)               β”‚
β”‚ πŸ’Ύ Memory Usage: 2.1GB/8GB (26%)                    β”‚
β”‚ πŸ’½ Disk I/O: 125MB/s read, 89MB/s write             β”‚
β”‚ 🌐 Network I/O: 45MB/s in, 32MB/s out               β”‚
β”‚                                                       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ [Events] [Logs] [Config] [Cleanup] [Export] [Quit]  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Event Monitor

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Live Events ───────────────────────┐
β”‚ 🟒 2024-01-15 13:45:23  container  web-server started β”‚
β”‚ 🟑 2024-01-15 13:44:58  image      nginx:latest pulled β”‚
β”‚ πŸ”΄ 2024-01-15 13:44:12  container  old-app stopped    β”‚
β”‚ 🟒 2024-01-15 13:43:45  volume     data-vol created   β”‚
β”‚ 🟑 2024-01-15 13:43:20  network    api-net connected  β”‚
β”‚ 🟒 2024-01-15 13:42:55  container  db-server started  β”‚
β”‚ πŸ”΄ 2024-01-15 13:42:30  container  temp-job exited(0) β”‚
β”‚ 🟑 2024-01-15 13:42:05  image      ubuntu:latest built β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ ↑/↓: Scroll | f: Filter | c: Clear | s: Save | q: Quit β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

⌨️ Keyboard Shortcuts

  • Tab - Next panel/field
  • Shift+Tab - Previous panel/field
  • Ctrl+C - Cancel current operation
  • Escape - Go back/cancel
  • q - Quit application
  • ? - Show context help
  • / - Search/filter current view

List Navigation

  • ↑/↓ - Move selection up/down
  • Page Up/Down - Scroll page up/down
  • Home/End - Go to first/last item
  • Enter - Select item or open details
  • Space - Toggle selection (multi-select)

Container Management

  • s - Start selected container
  • t - Stop selected container
  • r - Restart selected container
  • p - Pause selected container
  • k - Kill selected container
  • d - Delete selected container
  • l - View logs
  • e - Execute shell
  • i - Inspect details

Image Management

  • p - Pull image from registry
  • b - Build image from Dockerfile
  • t - Tag image
  • h - Push image to registry
  • r - Run container from image
  • d - Delete image
  • s - Save image to file
  • l - Load image from file

System Operations

  • F5 - Refresh current view
  • Ctrl+R - Reload all data
  • Ctrl+L - Clear screen
  • Ctrl+S - Save current view to file
  • Ctrl+E - Export system information

🎨 Customization

Theme Options

The TUI supports multiple color schemes:

  • Default - Standard terminal colors
  • Dark - Dark theme with high contrast
  • Light - Light theme for bright terminals
  • Monochrome - Black and white for compatibility
  • Custom - User-defined color scheme

Configuration

# Set default theme
servin config set tui.theme dark

# Enable mouse support
servin config set tui.mouse true

# Set refresh interval
servin config set tui.refresh 2s

# Configure log tail lines
servin config set tui.logs.tail 100

# Set default container shell
servin config set tui.shell /bin/bash

Layout Customization

  • Panel Arrangement - Customize panel layout
  • Column Visibility - Show/hide specific columns
  • Sort Options - Default sorting preferences
  • Filter Presets - Save commonly used filters
  • Hotkey Remapping - Customize keyboard shortcuts

πŸ”§ Advanced Features

Bulk Operations

  • Multi-Selection - Use Space to select multiple items
  • Bulk Actions - Apply operations to selected items
  • Confirmation Dialogs - Safety prompts for destructive actions
  • Progress Indicators - Visual feedback for long operations

Search and Filtering

  • Real-time Search - Filter as you type
  • Advanced Filters - Status, labels, dates
  • Regular Expressions - Pattern-based filtering
  • Saved Searches - Store frequently used filters

Integration Features

  • Shell Integration - Launch external commands
  • File Manager - Browse container filesystems
  • Log Streaming - Real-time log following
  • Statistics Charts - ASCII-based performance graphs

πŸ“š Next Steps

πŸ’‘ TUI Pro Tips

  • Mouse Support: Enable mouse support with servin config set tui.mouse true
  • SSH Sessions: TUI works perfectly over SSH for remote management
  • Screen/Tmux: Run TUI in screen or tmux for persistent sessions
  • Context Help: Press ? in any view for context-specific help
  • Log Monitoring: Use the log viewer for real-time container debugging