Mira - A lightweight WebUI alternative to top/htop for GNU/Linux.

Overview

Mira

License: MIT

Mira lets you monitor your server's resource usage through a responsive WebUI.

========

Introduction

Mira is a tool built to serve a requirement where you can view your headless server's current resource usage but without all the additional information found from other applications such as top or htop. Mira keeps its 3rd party application dependencies low by reading data from the /proc folders.

Mira aims to be lightweight, fast, and most importantly simple. The WebUI only shows the information that you may be interested in such as CPU and Memory usage, running processes and even your docker containers. Updates are delivered to your browser using a Websocket connection but will fall back to HttpRequests if the Websocket connection is unavailable or disabled in the configuration file.

Mira is a Spanish word that translates into English as "look", "sight", "watch".

Screenshots

Desktop

Desktop

Mobile

Mobile

Installation

Mira is only available through a docker image. Below is a minimal docker-compose.yml configuration to get it up and running.

version: "3.8"
services:
  mira:
    image: jams246/mira
    container_name: mira
    pid: host # Required to show host system processes and not the containers processes.
    network_mode: host
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock:ro" # Required to show docker containers 

Visit your server on port 44356 using your favourite browser, and you should see the UI update.

Limitations

OS support

  • Debian based systems only.

Missing features

  • HDD temperature readings.
  • Network traffic
  • Disk IO
  • Docker containers as optional
  • Disable websocket
  • Enable debugging

Known issues

  • Resizing the viewport causes the charts to resize.
  • Minor visual inconsistencies.
You might also like...
Simple and Lightweight PHP Class & Methods Annotations Reader

README Simple and Lightweight PHP Class & Methods Annotations Reader Forked from eriknyk/Annotations 项目地址 github https://github.com/phppkg/annotations

a super lightweight markdown wiki/blog/tweeting system.

laMDWiki is a super light weight blog/wiki platform running on PHP!

DooTask is a lightweight open source online project task management tool that provides various document collaboration tools, online mind mapping, online flowcharting, project management, task distribution, instant IM, file management and other tools.

DooTask is a lightweight open source online project task management tool that provides various document collaboration tools, online mind mapping, online flowcharting, project management, task distribution, instant IM, file management and other tools.

yxorP is a PHP-based proxy application that is very lightweight and easily customizable per user needs.
yxorP is a PHP-based proxy application that is very lightweight and easily customizable per user needs.

Web Proxy Guzzler + SAAS(y) Cockpit (GUI Dashboard incl.). Feature Rich, Multi-tenancy, Headless, Plug & Play, Augmentation & Content Spinning Web Proxy with Caching - PHP CURL+Composer are Optional. Leveraging SAAS architecture to provide multi-tenancy, multiple threads, caching, and an article spinner service.

WebUI for the reMarkable(R) cloud
WebUI for the reMarkable(R) cloud

rmWebUI rmWebUI is a simple web interface for the reMarkable® cloud. Install First run: composer run deploy This will create a dist/ folder with all

FruityWiFi is a wireless network auditing tool. The application can be installed in any Debian based system (Jessie) adding the extra packages. Tested in Debian, Kali Linux, Kali Linux ARM (Raspberry Pi), Raspbian (Raspberry Pi), Pwnpi (Raspberry Pi), Bugtraq, NetHunter.
PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant.

P H I N G Thank you for using PHING! PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant. You can do anything wit

PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant.

P H I N G Thank you for using PHING! PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant. You can do anything wit

Baicloud CMS is a lightweight content management system (CMS) based on PHP and MySQL and running on Linux, windows and other platforms

BaiCloud-cms About BaiCloud-cms is a powerful open source CMS that allows you to create professional websites and scalable web applications. Visit the

PHP APM (Alternative PHP Monitor)

APM (Alternative PHP Monitor) APM (Alternative PHP Monitor) is a monitoring extension enabling native Application Performance Management (APM) for PHP

A Chainable, REST Friendly, PHP HTTP Client. A sane alternative to cURL.

Httpful Httpful is a simple Http Client library for PHP 7.2+. There is an emphasis of readability, simplicity, and flexibility – basically provide the

An alternative Redis session handler for PHP featuring per-session locking and session fixation protection

RedisSessionHandler An alternative Redis session handler featuring session locking and session fixation protection. News phpredis v4.1.0 (released on

🍺 The missing package manager for macOS (or Linux)

Homebrew Features, usage and installation instructions are summarised on the homepage. Terminology (e.g. the difference between a Cellar, Tap, Cask an

A fork of Laravel Valet to work in Linux.

Introduction Valet Linux is a Laravel development environment for Linux minimalists. No Vagrant, no /etc/hosts file. You can even share your sites pub

Nuber is an open source container management platform it provides a front end to manage your own cloud infrastructure, using Linux Containers virtualization technology

Nuber is an open source container management platform it provides a front end to manage your own cloud infrastructure, using Linux Containers virtualization technology

Wake PC is a super tiny password protected webapp for linux machines that sends WOL packets, written in PHP.
Wake PC is a super tiny password protected webapp for linux machines that sends WOL packets, written in PHP.

Wake PC Wake PC is a super tiny password protected webapp for linux machines that sends WOL packets, written in PHP. How to set up Quick setup You can

Get the system resources in PHP, as memory, number of CPU'S, Temperature of CPU or GPU, Operating System, Hard Disk usage, .... Works in Windows & Linux

system-resources. A class to get the hardware resources We can get CPU load, CPU/GPU temperature, free/used memory & Hard disk. Written in PHP It is a

A much faster alternative to youtube-dl built for PHP applications.
A much faster alternative to youtube-dl built for PHP applications.

youtube-downloader This project was inspired by a very popular youtube-dl python package: https://github.com/rg3/youtube-dl Yes, there are multiple ot

Comments
  • Support for docker on macOS?

    Support for docker on macOS?

    I have tested this image with macOS, looks like it is unable to capture the information for for macOS. For example:

    • the OS info shows Linux version 5.10.76-linuxkit. This seems like a layer between macOS and docker container
    • the total memory is the amount of memory allocated to docker instead of the OS's

    Question: I am using the default compose example when testing

    • Is there a way to configure mira to display the macOS information?

    compose.yml

    version: "3.8"
    services:
      mira:
        image: jams246/mira
        container_name: mira
        pid: host
        ports:
          - "44356:44356"
          - "44357:44357"
        volumes:
          - "/var/run/docker.sock:/var/run/docker.sock:ro" 
    

    many thanks

    opened by MarcoLeongDev 0
  • With ports: Websocket connection lost. Attempting to reconnect. With network-mode: host: 500 Internal Server Error

    With ports: Websocket connection lost. Attempting to reconnect. With network-mode: host: 500 Internal Server Error

    With ports, Mira will always show this status Websocket connection lost. Attempting to reconnect.

    The CPU & memory section won't show anything.

    But if I leave it after 30-60 secs, everything works as normal.

    stock standard docker-compose like in the readme.

    ~/mira# docker-compose logs
    Attaching to mira
    

    With host mode:

    Oops! An Error Occurred
    The server returned a "500 Internal Server Error".
    Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.
    

    logs still won't show anything.

    opened by C-Fu 0
  • [QUESTION] Reverse Proxy Usage

    [QUESTION] Reverse Proxy Usage

    Does this work with a reverse proxy? I currently have Nginx setup and I can access the "site" but nothing updates after the initial load. I do have websockets enabled on the link.

    opened by tucker19 3
Owner
Jams246
Jams246
A much faster alternative to youtube-dl built for PHP applications.

youtube-downloader This project was inspired by a very popular youtube-dl python package: https://github.com/rg3/youtube-dl Yes, there are multiple ot

null 668 Jan 3, 2023
FreeScout — Free self-hosted help desk & shared mailbox (Zendesk / Help Scout alternative)

Free Self-Hosted Zendesk & Help Scout Alternative FreeScout is the super lightweight free open source help desk and shared inbox written in PHP7+ (Lar

FreeScout 1.8k Jan 2, 2023
Browser Administration for Linux-Based Audio/Video-Player like ODROID or Raspberry Pi

Browser Administration for Linux-Based Audio/Video-Player like ODROID or Raspberry Pi.

Max2Play 41 Apr 23, 2022
Joyce 🦊 - Panel Remote Access Android, Windows and Linux

Joyce is an exploiting tool (botnet) which compiles a malware with famous payload, and then the compiled maware can be executed on Linux , Windows and Android. Joyce Provides An Easy way to create Backdoors and Payload which can bypass most anti-virus.

AeX03 8 Nov 1, 2022
A Visual Bookmark App built on top of Laravel 5

Laravel Bookmark Visual bookmark organizer application in Laravel ![screenshot](https://rivario.com/bookmark/images/bookmark.png ""bookmark"") Working

YongHun Byun 155 Mar 25, 2022
Kyle is a web application built with Laravel for web developers and small companies to efficiently track and stay on top of yearly expenses related to services

Kyle Kyle is a web application built with Laravel for web developers and small companies to efficiently track and stay on top of yearly expenses relat

Laravelista 36 Jul 15, 2022
UserFrosting is a secure, modern user management system written in PHP and built on top of the Slim Microframework, Twig templating engine, and Eloquent ORM.

UserFrosting 4.6 Branch Version Build Coverage Style master hotfix develop https://www.userfrosting.com If you simply want to show that you like this

UserFrosting 1.6k Jan 1, 2023
A micro web application providing a REST API on top of any relational database, using Silex and Doctrine DBAL

Microrest is a Silex provider to setting up a REST API on top of a relational database, based on a YAML (RAML) configuration file.

marmelab 187 Nov 17, 2022
Simple and lightweight OOP wrapper for PHP's low-level sockets extension (ext-sockets)

clue/socket-raw Simple and lightweight OOP wrapper for PHP's low-level sockets extension (ext-sockets). PHP offers two networking APIs, the newer stre

Christian Lück 321 Dec 15, 2022
An ultra-lightweight blogging engine, written in PHP.

简体中文, Italiano. ?? Translations wanted! Go to the wiki to find out more about translating Chyrp Lite into your language. What can Chyrp Lite do for me

Daniel Pimley 202 Jan 2, 2023