mirror of
https://github.com/acedanger/shell.git
synced 2026-03-24 19:11:48 -07:00
docs: Update README to enhance feature descriptions and add usage examples for Docker Manager
This commit is contained in:
@@ -4,9 +4,12 @@ A Python command-line application to manage Docker containers defined in subdire
|
||||
|
||||
## Features
|
||||
|
||||
- **Rich UI**: Beautiful terminal output using the `rich` library, including tables, panels, and colored status indicators.
|
||||
- **List**: View currently running containers across all your projects.
|
||||
- **Describe**: Show detailed information about containers in a specific project, including descriptions.
|
||||
- **Volumes**: List volumes used by a specific project.
|
||||
- **Diun Integration**: Automatically detects if [Diun](https://github.com/crazy-max/diun) is running and displays image versions and update availability directly in the list.
|
||||
- **Describe**: Show detailed information about containers in a specific project, including descriptions, ports, and a formatted table of volumes.
|
||||
- **Volumes**: List all volumes used by a specific project with source and destination details.
|
||||
- **Logs**: View logs for a project, with options to follow, tail, and **filter by specific container/service**.
|
||||
- **Stop**: Stop containers for a specific project or all projects.
|
||||
- **Update**: Pull the latest images and recreate containers (equivalent to `docker compose pull && docker compose up -d`).
|
||||
- **Restart**: Restart containers for a specific project or all projects.
|
||||
@@ -15,6 +18,10 @@ A Python command-line application to manage Docker containers defined in subdire
|
||||
|
||||
- Python 3
|
||||
- Docker and Docker Compose (plugin) installed.
|
||||
- The `rich` Python library:
|
||||
```bash
|
||||
pip install rich
|
||||
```
|
||||
- A `~/docker/` directory containing subdirectories for each of your projects.
|
||||
- Each project subdirectory must contain a `docker-compose.yml`, `docker-compose.yaml`, `compose.yml`, or `compose.yaml` file.
|
||||
|
||||
@@ -46,10 +53,34 @@ A Python command-line application to manage Docker containers defined in subdire
|
||||
Run the application using the command name you set up (e.g., `dm`).
|
||||
|
||||
### List Running Containers
|
||||
Displays a table with Project, Container Name, State, Image, Version, and Update Status.
|
||||
```bash
|
||||
dm list
|
||||
```
|
||||
|
||||
### Describe Project
|
||||
Show detailed info (Service, Image, State, Ports, Description, Volumes) for a project.
|
||||
```bash
|
||||
dm describe project_name
|
||||
```
|
||||
|
||||
### List Volumes
|
||||
Show a table of all volumes (Bind mounts and named volumes) for a project.
|
||||
```bash
|
||||
dm volumes project_name
|
||||
```
|
||||
|
||||
### View Logs
|
||||
View logs for a project.
|
||||
```bash
|
||||
dm logs project_name
|
||||
```
|
||||
**Options:**
|
||||
- Follow output: `dm logs project_name -f`
|
||||
- Tail specific number of lines: `dm logs project_name --tail 100`
|
||||
- **Filter by container**: `dm logs project_name container_name`
|
||||
- Example: `dm logs media gluetun --tail 50`
|
||||
|
||||
### Stop Containers
|
||||
Stop a specific project:
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user