Docker - удаление с Debian (12, 13)
Docker
1
Сообщения
1
Posters
1
Просмотры
1
Watching
-
Полное и безопасное удаление Docker Engine с Debian 12 (Bookworm) и Debian 13 (Trixie) — включая все компоненты, конфиги, образы, контейнеры, тома и кэш.
Внимание: Это полное удаление. Все данные контейнеров, образы, тома будут безвозвратно удалены.
Шаг 1: Остановить и удалить все контейнеры
# Остановить все запущенные контейнеры sudo docker stop $(sudo docker ps -q) 2>/dev/null || true # Удалить ВСЕ контейнеры (включая остановленные) sudo docker rm $(sudo docker ps -aq) 2>/dev/null || true-q— только ID, без лишнего вывода
|| true— игнорировать ошибки, если Docker не установленШаг 2: Удалить все образы, тома, сети, кэш
# Удалить ВСЕ образы sudo docker rmi $(sudo docker images -aq) 2>/dev/null || true # Удалить ВСЕ неиспользуемые тома sudo docker volume prune -f # Удалить ВСЕ неиспользуемые сети sudo docker network prune -f # Удалить весь кэш сборки sudo docker builder prune -afОпция
-f— без подтверждения
Опция-a— удалить все, включая используемые (осторожно!)Шаг 3: Удалить Docker и все связанные пакеты
# Основные пакеты Docker sudo apt-get purge -y docker-ce docker-ce-cli containerd.io \ docker-buildx-plugin docker-compose-plugin # Дополнительные пакеты (если были установлены) sudo apt-get purge -y docker-scan-plugin docker-ce-rootless-extras # Удалить зависимости, которые больше не нужны sudo apt-get autoremove -ypurge— удаляет пакеты + конфигурационные файлыШаг 4: Удалить официальный репозиторий Docker
# Удалить файл репозитория sudo rm -f /etc/apt/sources.list.d/docker.list # Удалить GPG-ключ sudo rm -f /etc/apt/keyrings/docker.ascШаг 5: Удалить все данные Docker (образы, контейнеры, тома, конфиги)
# Основная директория данных Docker sudo rm -rf /var/lib/docker # Конфигурация containerd sudo rm -rf /var/lib/containerd # Логи sudo rm -rf /var/log/docker* sudo rm -rf /var/log/containerd* # Конфиги systemd (если есть) sudo rm -rf /etc/docker sudo rm -rf /etc/containerd # Плагин compose (если установлен отдельно) sudo rm -rf ~/.docker/cli-plugins/docker-composeВнимание:
/var/lib/docker— все ваши образы, тома, контейнеры. После удаления — восстановление невозможно.Шаг 6: Очистить кэш apt
sudo apt-get clean sudo apt-get updateШаг 7: Перезагрузить систему (рекомендуется)
sudo rebootЧтобы убедиться, что systemd не держит старые юниты.
Проверка: Docker полностью удалён?
# Должны выдать "command not found" docker --version docker-compose --version containerd --version# Не должно быть процессов ps aux | grep -i docker ps aux | grep -i containerd# Не должно быть юнитов sudo systemctl status docker sudo systemctl status containerdИтог: Что удалено?
Компонент Путь Удалено? Пакеты docker-ce,containerd.ioи др.Да ( purge)Репозиторий /etc/apt/sources.list.d/docker.listДа GPG-ключ /etc/apt/keyrings/docker.ascДа Данные /var/lib/dockerДа Конфиги /etc/docker,/etc/containerdДа Логи /var/log/docker*Да Плагины ~/.docker/cli-pluginsДа Юниты systemd docker.service,containerd.serviceДа Полный скрипт удаления (одной командой)
#!/bin/bash set -e echo "Полное удаление Docker с Debian 12/13..." # 1. Остановить и удалить контейнеры sudo docker stop $(sudo docker ps -q) 2>/dev/null || true sudo docker rm $(sudo docker ps -aq) 2>/dev/null || true # 2. Удалить образы, тома, сети, кэш sudo docker rmi -f $(sudo docker images -aq) 2>/dev/null || true sudo docker volume prune -f 2>/dev/null || true sudo docker network prune -f 2>/dev/null || true sudo docker builder prune -af 2>/dev/null || true # 3. Удалить пакеты sudo apt-get purge -y docker-ce docker-ce-cli containerd.io \ docker-buildx-plugin docker-compose-plugin \ docker-scan-plugin docker-ce-rootless-extras 2>/dev/null || true sudo apt-get autoremove -y # 4. Удалить репозиторий и ключ sudo rm -f /etc/apt/sources.list.d/docker.list sudo rm -f /etc/apt/keyrings/docker.asc # 5. Удалить все данные sudo rm -rf /var/lib/docker /var/lib/containerd sudo rm -rf /var/log/docker* /var/log/containerd* sudo rm -rf /etc/docker /etc/containerd sudo rm -rf ~/.docker/cli-plugins # 6. Очистить кэш sudo apt-get clean sudo apt-get update echo "Docker полностью удалён." echo "Рекомендуется перезагрузить систему: sudo reboot"Сохраните как
uninstall-docker.sh, сделайте исполняемым:chmod +x uninstall-docker.sh sudo ./uninstall-docker.sh