Перейти к содержимому
RunStack
Вики· Обновлено 19 окт. 2026 г.

rs clean — чистка Docker и лимиты логов

Что удаляет rs clean и что нет, как ограничить логи Docker, ротация и journald.

rs clean показывает, что занимает место, и чистит по шагам — каждый шаг спрашивает. --report — только отчёт, --yes — без вопросов, только безопасные шаги.

Что удаляется и что нет

ШагПо умолчаниюЧем грозит
Висячие образы (слои без тега)даничем: это остатки старых версий
Кеш сборкидаследующая docker build будет дольше
Остановленные контейнерынетих нельзя будет запустить командой docker start; контейнеры RunStack не трогаются
Неиспользуемые образынетскачаются снова при надобности
Обнулить логи больше 100 МБнетпропадёт история логов; контейнеры продолжат работать
Лимит логов в daemon.jsonда—
Сократить journald до 500 МБнетпропадут старые системные логи

Тома не удаляются никогда — в них базы и файлы приложений. Скрипт только показывает неиспользуемые; проверьте и удалите вручную: docker volume rm <имя>.

Лимит логов Docker

По умолчанию драйвер json-file пишет логи контейнера без ограничения — один болтливый контейнер может заполнить диск. Лимит для всех новых контейнеров — в /etc/docker/daemon.json (rs clean добавит сам, сохранив остальные настройки):

{
  "log-driver": "json-file",
  "log-opts": { "max-size": "10m", "max-file": "3" }
}

Применяется после systemctl restart docker (работающие контейнеры перезапустятся) и только к новым или пересозданным контейнерам: docker compose up -d --force-recreate в каталоге проекта. Для одного сервиса — в его compose-файле:

logging:
  driver: json-file
  options: { max-size: "10m", max-file: "5" }

У сервисов RunStack этот лимит задан с самого начала.

Системный журнал

Ограничить journald навсегда: в /etc/systemd/journald.conf строка SystemMaxUse=500M, затем systemctl restart systemd-journald. Разово: journalctl --vacuum-size=500M.

Если место кончается снова

  • rs info disk и du -xh / --max-depth=2 | sort -h | tail — кто растёт.
  • Бэкапы на том же диске — частая причина; храните их на другом.
  • Логи приложений в /var/log — проверьте logrotate.