Ошибка Cannot connect to the Docker daemon
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?Команда docker не нашла службу Docker: служба не запущена, упала при старте или команда обращается не туда.
Запустите Docker
Что делать, зависит от того, как установлен Docker: службой в Linux (Docker Engine) или приложением Docker Desktop.
Linuxзапустите службу
Посмотрите состояние службы и запустите её:
sudo systemctl status docker
sudo systemctl start dockerЧтобы служба запускалась при включении компьютера (на Ubuntu и Debian это включено сразу после установки):
sudo systemctl enable dockerЕсли start не помог и служба снова failed, причина — в журнале:
sudo journalctl -u docker --no-pager -n 50Самые частые причины в журнале:
- ошибка в
/etc/docker/daemon.json— лишняя запятая, незакрытая кавычка, неизвестный параметр. Проверьте файл:python3 -m json.tool /etc/docker/daemon.jsonукажет строку с ошибкой. Исправьте и сноваsudo systemctl start docker; - закончилось место на диске — проверьте
df -h /var/lib/docker; - две установки Docker сразу — например, пакет из репозитория и snap. Оставьте одну: список snap-пакетов показывает
snap list.
Docker Desktopзапустите приложение
На Windows и macOS, а также в Docker Desktop для Linux, эта ошибка значит, что Docker Desktop не запущен. Запустите приложение и дождитесь, пока оно сообщит, что движок работает, — потом повторите команду. На Windows проверьте ещё, что WSL 2 работает: wsl --status в PowerShell.
Команда обращается не туда
Команда docker может быть настроена на другую службу — через переменную DOCKER_HOST или через контекст:
echo $DOCKER_HOST
docker context lsЕсли DOCKER_HOST не пустая, а вы работаете с локальным Docker, уберите её: unset DOCKER_HOST (и найдите, где она задаётся, — обычно в ~/.bashrc). В списке контекстов текущий отмечен звёздочкой; вернуться к обычному локальному Docker — docker context use default.
Не путайте с permission denied
Если в ошибке есть слова permission denied, служба работает, а у вашего пользователя нет прав на неё: это другая справка — Ошибка permission denied при запуске docker. Быстрая проверка: если sudo docker ps работает, а docker ps — нет, дело в правах, а не в службе.