docker-monitor-manager


Namedocker-monitor-manager JSON
Version 1.0.4 PyPI version JSON
download
home_pagehttps://github.com/amir-khoshdel-louyeh/docker-monitor
SummaryA powerful desktop tool for monitoring and managing Docker containers
upload_time2025-10-09 08:45:38
maintainerNone
docs_urlNone
authorAmir Khoshdel Louyeh
requires_python>=3.8
licenseMIT
keywords docker monitoring containers gui desktop management
VCS
bugtrack_url
requirements docker
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # DocMan 🐳📊

A powerful desktop tool for monitoring and managing Docker containers, built with Python and Tkinter.

This application provides a native graphical interface for live monitoring and management of your Docker containers, including:

- Real-time resource tracking (CPU & RAM).
- Auto-scaling of services when resource limits are exceeded.
- An integrated terminal for running Docker commands directly.

---

## Features ✨
- 📈 **Live container stats** (CPU%, RAM%)  
- ⚡ **Auto-scale** containers when resource limits are exceeded  
- ⏯️ **Manage containers**: Stop, Pause, Unpause, Restart, and Remove containers directly from the UI.
- 🎛️ **Global controls**: Apply actions to all containers at once.
- 🖥️ **Embedded Terminal**: A secure terminal for running `docker` commands.
- 📝 **Live Application Logs**: See what the monitor is doing in real-time.
- ⚙️ **Dynamic Configuration**: Adjust CPU/RAM limits and other settings without restarting the app.

---

## Installation 🚀

### Option 1: Install from PyPI (Recommended)
```bash
pip install docker-monitor-manager
```

### Option 2: Install from Source
```bash
git clone https://github.com/amir-khoshdel-louyeh/docker-monitor.git
cd docker-monitor
pip install .
```

### Prerequisites
- **Python 3.8+**
- **Docker Engine** (must be installed and running)

## Usage 

After installation, you can run Docker Manager from anywhere using either command:

```bash
# Full package name
docker-monitor-manager

# Or short command
dmm
```

### Development Setup

If you want to contribute or modify the source code:

### 1. Clone the Repository
```bash
git clone https://github.com/amir-khoshdel-louyeh/docker-monitor.git
cd docker-monitor
```

### 2. Create and Activate a Virtual Environment

**On macOS / Linux:**
```bash
python3 -m venv venv
source venv/bin/activate
```

**On Windows:**
```cmd
python -m venv venv
venv\Scripts\activate
```

### 3. Install in Development Mode
```bash
pip install -e .
```

## Configuration ⚙️
**On Windows:**
```bash
python -m venv venv
.\venv\Scripts\activate
```

You can adjust the monitoring behavior in the script:
### 3. Install Dependencies
Install the required Python packages from `requirements.txt`.
```bash
pip install -r requirements.txt
```

- **CPU Limit**: `CPU_LIMIT = 70.0`  
- **RAM Limit**: `RAM_LIMIT = 70.0`  
- **Max Clones**: `CLONE_NUM = 2`  
- **Check Interval**: `SLEEP_TIME = 1` (seconds)  
### 4. Run the Application
Launch the Tkinter application.
```bash
python3 app_tkinter.py
```

---

## API Endpoints 📡
## Configuration ⚙️

- `/` → Web dashboard  
- `/logs` → Returns latest logs in JSON  
- `/container_stats` → Stats for all containers (JSON)  
- `/control` → Control a specific container (pause, unpause, restart, remove)  
- `/control_all` → Apply action to all containers  
- `/stream` → Live event stream (Server-Sent Events)  
- `/kill_remove` → Run kill & remove script  
- `/test_environment` → Run test setup script  
You can adjust the monitoring behavior by clicking the **"Config"** button within the application. This allows you to dynamically change:

---
- **CPU Limit (%)**
- **RAM Limit (%)**
- **Max Clones**
- **Check Interval (s)**

## Example Dashboard Screenshot 🖼️
*(Add your screenshot here!)*  

---

## Notes 📝
- Requires Docker daemon access (if running without root, make sure your user is added to the `docker` group).  
- Custom scripts used:  

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/amir-khoshdel-louyeh/docker-monitor",
    "name": "docker-monitor-manager",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "docker, monitoring, containers, gui, desktop, management",
    "author": "Amir Khoshdel Louyeh",
    "author_email": "Amir Khoshdel Louyeh <your.email@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/47/bf/c5f2b6688163c17f6920b18235f2c7d17e15d407248d0a2225d93efbfe80/docker_monitor_manager-1.0.4.tar.gz",
    "platform": null,
    "description": "# DocMan \ud83d\udc33\ud83d\udcca\n\nA powerful desktop tool for monitoring and managing Docker containers, built with Python and Tkinter.\n\nThis application provides a native graphical interface for live monitoring and management of your Docker containers, including:\n\n- Real-time resource tracking (CPU & RAM).\n- Auto-scaling of services when resource limits are exceeded.\n- An integrated terminal for running Docker commands directly.\n\n---\n\n## Features \u2728\n- \ud83d\udcc8 **Live container stats** (CPU%, RAM%)  \n- \u26a1 **Auto-scale** containers when resource limits are exceeded  \n- \u23ef\ufe0f **Manage containers**: Stop, Pause, Unpause, Restart, and Remove containers directly from the UI.\n- \ud83c\udf9b\ufe0f **Global controls**: Apply actions to all containers at once.\n- \ud83d\udda5\ufe0f **Embedded Terminal**: A secure terminal for running `docker` commands.\n- \ud83d\udcdd **Live Application Logs**: See what the monitor is doing in real-time.\n- \u2699\ufe0f **Dynamic Configuration**: Adjust CPU/RAM limits and other settings without restarting the app.\n\n---\n\n## Installation \ud83d\ude80\n\n### Option 1: Install from PyPI (Recommended)\n```bash\npip install docker-monitor-manager\n```\n\n### Option 2: Install from Source\n```bash\ngit clone https://github.com/amir-khoshdel-louyeh/docker-monitor.git\ncd docker-monitor\npip install .\n```\n\n### Prerequisites\n- **Python 3.8+**\n- **Docker Engine** (must be installed and running)\n\n## Usage \n\nAfter installation, you can run Docker Manager from anywhere using either command:\n\n```bash\n# Full package name\ndocker-monitor-manager\n\n# Or short command\ndmm\n```\n\n### Development Setup\n\nIf you want to contribute or modify the source code:\n\n### 1. Clone the Repository\n```bash\ngit clone https://github.com/amir-khoshdel-louyeh/docker-monitor.git\ncd docker-monitor\n```\n\n### 2. Create and Activate a Virtual Environment\n\n**On macOS / Linux:**\n```bash\npython3 -m venv venv\nsource venv/bin/activate\n```\n\n**On Windows:**\n```cmd\npython -m venv venv\nvenv\\Scripts\\activate\n```\n\n### 3. Install in Development Mode\n```bash\npip install -e .\n```\n\n## Configuration \u2699\ufe0f\n**On Windows:**\n```bash\npython -m venv venv\n.\\venv\\Scripts\\activate\n```\n\nYou can adjust the monitoring behavior in the script:\n### 3. Install Dependencies\nInstall the required Python packages from `requirements.txt`.\n```bash\npip install -r requirements.txt\n```\n\n- **CPU Limit**: `CPU_LIMIT = 70.0`  \n- **RAM Limit**: `RAM_LIMIT = 70.0`  \n- **Max Clones**: `CLONE_NUM = 2`  \n- **Check Interval**: `SLEEP_TIME = 1` (seconds)  \n### 4. Run the Application\nLaunch the Tkinter application.\n```bash\npython3 app_tkinter.py\n```\n\n---\n\n## API Endpoints \ud83d\udce1\n## Configuration \u2699\ufe0f\n\n- `/` \u2192 Web dashboard  \n- `/logs` \u2192 Returns latest logs in JSON  \n- `/container_stats` \u2192 Stats for all containers (JSON)  \n- `/control` \u2192 Control a specific container (pause, unpause, restart, remove)  \n- `/control_all` \u2192 Apply action to all containers  \n- `/stream` \u2192 Live event stream (Server-Sent Events)  \n- `/kill_remove` \u2192 Run kill & remove script  \n- `/test_environment` \u2192 Run test setup script  \nYou can adjust the monitoring behavior by clicking the **\"Config\"** button within the application. This allows you to dynamically change:\n\n---\n- **CPU Limit (%)**\n- **RAM Limit (%)**\n- **Max Clones**\n- **Check Interval (s)**\n\n## Example Dashboard Screenshot \ud83d\uddbc\ufe0f\n*(Add your screenshot here!)*  \n\n---\n\n## Notes \ud83d\udcdd\n- Requires Docker daemon access (if running without root, make sure your user is added to the `docker` group).  \n- Custom scripts used:  \n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A powerful desktop tool for monitoring and managing Docker containers",
    "version": "1.0.4",
    "project_urls": {
        "Homepage": "https://github.com/amir-khoshdel-louyeh/docker-monitor",
        "Issues": "https://github.com/amir-khoshdel-louyeh/docker-monitor/issues",
        "Repository": "https://github.com/amir-khoshdel-louyeh/docker-monitor"
    },
    "split_keywords": [
        "docker",
        " monitoring",
        " containers",
        " gui",
        " desktop",
        " management"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1bbf8673c8c2aae5c41e5ad026dc1027b5821452ceac841bcbafb794ca2a97fc",
                "md5": "3ffb89cb42e00ed7c566416f37908489",
                "sha256": "2f2bcc27136952914df87a0c1713e32283d9e782621647abdff0a0d92318e79e"
            },
            "downloads": -1,
            "filename": "docker_monitor_manager-1.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3ffb89cb42e00ed7c566416f37908489",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 12883,
            "upload_time": "2025-10-09T08:45:36",
            "upload_time_iso_8601": "2025-10-09T08:45:36.630244Z",
            "url": "https://files.pythonhosted.org/packages/1b/bf/8673c8c2aae5c41e5ad026dc1027b5821452ceac841bcbafb794ca2a97fc/docker_monitor_manager-1.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "47bfc5f2b6688163c17f6920b18235f2c7d17e15d407248d0a2225d93efbfe80",
                "md5": "6e95dfa937aecbb68627cb84403e4e62",
                "sha256": "6552fa2cad69e08654b803f7d6b74b996559eb712b06dcd7acaf95f623f01583"
            },
            "downloads": -1,
            "filename": "docker_monitor_manager-1.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "6e95dfa937aecbb68627cb84403e4e62",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 15520,
            "upload_time": "2025-10-09T08:45:38",
            "upload_time_iso_8601": "2025-10-09T08:45:38.080105Z",
            "url": "https://files.pythonhosted.org/packages/47/bf/c5f2b6688163c17f6920b18235f2c7d17e15d407248d0a2225d93efbfe80/docker_monitor_manager-1.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-09 08:45:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "amir-khoshdel-louyeh",
    "github_project": "docker-monitor",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "docker",
            "specs": []
        }
    ],
    "lcname": "docker-monitor-manager"
}
        
Elapsed time: 1.90771s