32 lines
3.2 KiB
Markdown
32 lines
3.2 KiB
Markdown
---
|
||
aliases:
|
||
tags:
|
||
- зрелость/🌱
|
||
date:
|
||
- - 2024-08-21
|
||
zero-link:
|
||
- "[[00 Docker]]"
|
||
parents:
|
||
- "[[Очистка мусора в Docker]]"
|
||
linked:
|
||
---
|
||
Столкнулся с проблемой, что никакие команды по очистке мусора с prune мне не помогали. Проведя анализ занятого места на дисках нашел, что одна из директорий в overlay2 занимает много места.
|
||
|
||
|
||
Далее можно попробовать перебрать все контейнеры и найти какому контейнеру принадлежит проблемная директория. Выполняем команду и сравниваем директории.
|
||
```bash
|
||
docker inspect --format='{{.GraphDriver.Data.MergedDir}}' <container_id>
|
||
```
|
||
|
||
Далее необходимо разобраться для чего контейнер использует проблемную директорию и можно ли ее удалить без последствий.
|
||
## Удаление проблемной директории
|
||
Возможные последствия удаления `/var/lib/docker/overlay2`:
|
||
1. **Потеря контейнеров**: Все контейнеры, которые были созданы и работали на основе файлов, хранящихся в `overlay2`, перестанут работать. Контейнеры, которые используют эти слои файловой системы, будут потеряны, и Docker не сможет их восстановить.
|
||
2. **Потеря образов Docker**: Образы, которые были использованы для создания контейнеров, также будут потеряны. Эти образы хранятся в виде слоев файловой системы внутри `overlay2`, и их удаление приведет к необходимости повторного скачивания и создания образов, если они понадобятся в будущем.
|
||
3. **Нарушение целостности Docker**: Docker может перестать корректно работать, так как утратит связь со всеми контейнерами и образами, которые были связаны с этими слоями. Вам, возможно, придется переустановить Docker или пересоздать инфраструктуру Docker-контейнеров с нуля.
|
||
4. **Удаление данных**: Любые данные, хранящиеся в контейнерах, которые были на данный момент не сохранены (например, данные базы данных или файловые изменения внутри контейнеров), будут потеряны.
|
||
|
||
Если вы уверены в своих действиях, то выполните простую команду удаления. Пример
|
||
```bash
|
||
sudo rm -rf /var/lib/docker/overlay2/4c7cd655687d527abea5c3bd479d8f68ec564e6b1
|
||
``` |