Skip to content

About

Lightweight CLI/TUI Docker resource manager: detects idle containers, RAM leaks & safely cleans reclaimable disk space

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

🐳 dockertrim (Local Docker Memory & CPU Optimizer)

Release Go Version License: MIT Platform

Легковесная CLI/TUI-утилита для ресурсной гигиены Docker на локальной машине.
Обнаруживает забытые фоновые контейнеры («зомби»), утечки оперативной памяти и позволяет безопасно освобождать дисковое пространство без риска повредить локальные базы данных.

📥 Скачать готовый исполняемый файл (v1.0.0)


⚡ Преимущества перед docker stats и Docker Desktop

Функция docker stats Docker Desktop dockertrim
Потребление ресурсов ~10 MB 8–16 GB RAM ~15 MB RAM (быстрый статический бинарник)
Группировка по Docker-Compose ❌ Нет ⚠️ Базовая ✅ Да (автоматически по лейблам проектов)
Детект "Idle / Stale" сервисов ❌ Нет ❌ Нет ✅ Да (подсветка контейнеров с 0% CPU и утечкой RAM)
Предупреждения OOM-Limit ❌ Нет ❌ Нет ✅ Да (желтый >80%, красный критический >90%)
Аудит Reclaimable Space ❌ Нет ⚠️ Общий объем ✅ Да (разделение на Safe / Caution / Dangerous)
Защита баз данных (Volumes) ❌ Нет ❌ Нет ✅ Да (тома исключены по умолчанию, строгий guard)
Пакетные действия (Multi-select) ❌ Нет ⚠️ Медленно мышью ✅ Да (Space / v + s, p, r, x)

🚀 Установка и сборка

Требуется установленный Go 1.21+:

# Клонирование и сборка
git clone <repo-url>
cd dockertrim
go build -o dockertrim.exe .

🖥️ Быстрый старт

1. Интерактивный TUI-режим (по умолчанию)

.\dockertrim.exe

Открывает полноэкранный терминальный дашборд с обновлением метрик каждые 2 секунды.

2. Разовый отчет анализа без TUI (--summary / -s)

.\dockertrim.exe --summary

Выводит структурированный аудит в консоль с цветовой подсветкой (удобно перед запуском IDE или в CI/скриптах).

3. Экспорт в JSON (--json / -j)

.\dockertrim.exe --json

4. Демо-режим (--demo / -d)

Для демонстрации интерфейса или тестирования без запущенного Docker Desktop:

.\dockertrim.exe --demo

⌨️ Горячие клавиши (Keybindings)

Навигация и выбор

  • Tab или 1, 2 — переключение между вкладками «1. Контейнеры» и «2. Диск и очистка»
  • ↑ / ↓ или k / j — навигация по строкам
  • Space или v — выбор / снятие выбора строки (чекбокс)
  • a — выбрать все / снять выбор со всех

Управление контейнерами (Вкладка 1)

  • s — Stop (остановить выбранные контейнеры)
  • p — Pause / Unpause (поставить на паузу процессы внутри контейнера, освобождая 100% CPU без сброса стейта)
  • r — Restart (перезапустить контейнеры)
  • x — Remove (удалить контейнеры с модальным подтверждением)
  • m — сортировка по потреблению RAM (по убыванию)
  • u — сортировка по CPU%
  • n — сортировка по имени

Аудит и очистка диска (Вкладка 2)

  • Space — переключить флажок категории (кэш сборок, безымянные слои, тома)
  • Enter — запустить безопасную очистку выбранных категорий
  • c — быстрый переход к аудиту диска из любой вкладки

Общие

  • y / Enter — подтвердить действие в модальном окне
  • Esc / n — отменить модальное окно
  • R — принудительно перечитать метрики из Docker Daemon
  • q / Ctrl+C — выход из утилиты

🛡️ Политика безопасности данных (Zero-Accident Design)

dockertrim создан для того, чтобы разработчики перестали бояться разрушительных последствий слепого docker system prune -a:

  1. Уровень 1 (Безопасно - SAFE):

    • Docker Build Cache (BuildKit) — кэши промежуточных шагов сборки (часто занимают 10–30 ГБ). Удаление не влияет на данные.
    • Dangling Images — безымянные промежуточные слои <none>:<none>.
    • Stopped Containers — временные контейнеры, завершившие работу. Эти пункты выбраны по умолчанию для мгновенной очистки.
  2. Уровень 2 (Осторожно - CAUTION):

    • Unused Tagged Images — скачанные именованные образы без запущенных контейнеров. Не выбраны по умолчанию.
  3. Уровень 3 (Опасно: Тома - DANGEROUS):

    • Unused Volumes — неиспользуемые тома. Строго защищены от случайного удаления, требуют ручной отметки чекбоксом и двойного подтверждения, чтобы не стереть локальные базы данных.

About

Lightweight CLI/TUI Docker resource manager: detects idle containers, RAM leaks & safely cleans reclaimable disk space

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages