Initial commit: Docker overlay2 cleanup TUI
This commit is contained in:
60
README.md
Normal file
60
README.md
Normal file
@@ -0,0 +1,60 @@
|
||||
# docker-overlay-cleanup
|
||||
|
||||
Interactive TUI tool to find and clean orphaned Docker overlay2 folders.
|
||||
|
||||
## The Problem
|
||||
|
||||
`/var/lib/docker/overlay2` can grow large with orphaned layer folders that aren't referenced by any container or image. Even after running `docker system prune`, some folders may remain.
|
||||
|
||||
## What This Does
|
||||
|
||||
1. Scans all folders in `/var/lib/docker/overlay2`
|
||||
2. Maps each folder to its container/image using `docker inspect`
|
||||
3. Identifies orphans (folders not referenced by anything)
|
||||
4. Provides an interactive TUI to select and delete them
|
||||
|
||||
## Usage
|
||||
|
||||
```bash
|
||||
# Clone
|
||||
git clone https://gitea.olex.me/clawd/docker-overlay-cleanup.git
|
||||
cd docker-overlay-cleanup
|
||||
|
||||
# Run (requires root for Docker access)
|
||||
sudo python3 docker-overlay-cleanup.py
|
||||
```
|
||||
|
||||
## TUI Keybindings
|
||||
|
||||
| Key | Action |
|
||||
|-----|--------|
|
||||
| `↑↓` / `jk` | Navigate |
|
||||
| `Space` | Toggle selection |
|
||||
| `o` | Select all orphans |
|
||||
| `c` | Clear selection |
|
||||
| `a` | Toggle show all / orphans only |
|
||||
| `Enter` | Delete selected (with confirmation) |
|
||||
| `q` / `Esc` | Quit |
|
||||
|
||||
## Screenshot
|
||||
|
||||
```
|
||||
Docker overlay2 Cleanup | Orphans: 12 (4.2 GB) | Selected: 0 (0 B) [ORPHANS ONLY]
|
||||
↑↓:nav | Space:select | a:toggle-all | Enter:delete-selected | q:quit
|
||||
|
||||
[ ] 1.2 GB a1b2c3d4e5f6... ORPHAN
|
||||
[ ] 800.0 MB f6e5d4c3b2a1... ORPHAN
|
||||
[ ] 500.0 MB 1234567890ab... ORPHAN
|
||||
...
|
||||
```
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3.6+
|
||||
- Docker
|
||||
- Root access (sudo)
|
||||
- No external Python dependencies (uses curses from stdlib)
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
Reference in New Issue
Block a user