Инструменты пользователя

Инструменты сайта


bsod:docker_daemon_failed

Ошибка: Полный отказ системы (Docker "завис", ВМ "упала")

Симптомы: Все сервисы перестают отвечать (ошибка Timeout). Команды

docker

в терминале «висят» и не выполняются. В крайнем случае — падает вся виртуальная машина.

Что это значит: Это самый серьезный сбой. Он означает, что «сломался» не отдельный контейнер, а сам «движок» Docker (Docker-демон) или даже операционная система.

Мой опыт

Я столкнулся с этим, когда в системе «бесчинствовал» проблемный контейнер BookStack, находясь в цикле вечной перезагрузки. Это, вероятно, вызвало утечку ресурсов (памяти/процессов), что и привело к полному зависанию службы Docker.

План "Реанимации" (от простого к сложному)

1. **"Мягкий" перезапуск службы Docker.** Это первое, что нужно попробовать.
sudo systemctl restart docker
   После этого нужно подождать 30-60 секунд и поднять все сервисы заново:
cd ~/docker-stack
docker compose up -d
2. **"Жесткая" перезагрузка всей виртуальной машины.** Если `systemctl restart docker` не помогает или тоже "виснет".
sudo reboot
   После перезагрузки Docker должен сам поднять все контейнеры с политикой <code>restart: unless-stopped</code>.
3. **Анализ причин.** Если сбои повторяются, нужно искать "виновника".
   * **Команда:** <code>docker stats</code> — показывает в реальном времени, сколько CPU и RAM "ест" каждый контейнер. Помогает найти "прожорливый" сервис.
   * **Решение:** Проблемный сервис нужно либо исправить (как мы делали с LinkAce), либо "ампутировать" (как с BookStack), удалив его из <code>docker-compose.yml</code>.

Этот показал, что нестабильные, постоянно перезапускающиеся контейнеры — это не просто "неработающий сервис", а **угроза для стабильности всей системы**.

bsod/docker_daemon_failed.txt · Последнее изменение: hallow