Docker Desktop starting... / Docker Desktop stopped / Cannot connect to the Docker daemon at unix:///var/run/docker.sock
#Как устроен Docker на Mac
На macOS контейнеры Linux запускаются внутри лёгкой виртуальной машины, которой управляет Docker Desktop. Если он «бесконечно запускается», значит не стартует виртуальная машина или демон. Основные причины: несовместимая версия macOS, нехватка памяти или места на диске, конфликт с VPN и антивирусами, повреждённые данные, неподтверждённые системные расширения и привилегии.
#Типичные причины
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Не установлена RosettaДля некоторых образов на Apple Silicon. | Ошибки с образами amd64. | softwareupdate --install-rosetta --agree-to-license. |
| Конфликт версий Docker и macOSУстаревшая версия. | Приложение не открывается после обновления macOS. | Установите последнюю версию. |
| Нет местаОбраз диска ВМ переполнен. | Docker не стартует. | Очистите: docker system prune, увеличьте лимит диска в настройках. |
| Остатки старой установкиDocker Toolbox, старые socket. | Сообщения о демоне. | Удалите старые утилиты. |
| VPN или проксиКонфликт сетевых настроек. | Зависает на старте при включённом VPN. | Отключите VPN и повторите. |
| Повреждённые данныеСбой при обновлении. | Не помогает перезапуск. | Сброс до заводских. |
#Диагностика
- Проверьте системные требованияНа Mac откройте меню Apple → «Об этом Mac»: запишите версию macOS и тип процессора (Apple Silicon или Intel). На официальной странице установки Docker Desktop for Mac проверьте системные требования именно своей версии. Несовместимую с системой новую сборку не устанавливайте. Rosetta нужна лишь для некоторых инструментов/сценариев на Apple Silicon, а отсутствие Rosetta не является универсальной причиной отказа Docker Desktop; подсказку об установке выполняйте только при соответствующем запросе.
- Освободите место и оперативную памятьОткройте Finder → «Программы» и проверьте, что Docker.app находится в установленном месте. В меню Apple → «Системные настройки» → «Основные» → «Хранилище» оцените свободное место (для работы контейнеров потребуется запас, зависящий от образов). Откройте «Мониторинг системы» → вкладку «Память», проверьте давление памяти. При заполненном диске убирайте только известные пользователю файлы, не удаляйте содержимое каталога Docker вручную — там хранятся образы, тома и данные.
- Закройте и перезапустите Docker DesktopЕсли значок кита Docker виден в строке меню, откройте его → «Quit Docker Desktop»/«Выход из Docker Desktop», дождитесь закрытия и повторно запустите Docker через Finder → «Программы». Если интерфейс открылся, нажмите «Troubleshoot»/«Устранение неполадок» → «Restart Docker Desktop» и дождитесь появления состояния работающего движка. Это перезапускает среду и может остановить текущие контейнеры; сначала проверьте, не идут ли важные задачи и записи в базы.
- Проверьте процессыДля диагностики откройте «Программы» → «Утилиты» → «Терминал», выполните
docker context ls, затемdocker versionиdocker info. Если клиент отвечает, а сервер показываетCannot connect to the Docker daemon, проблема относится к запущенному движку или выбранному контексту, а не обязательно к установке CLI. Посмотрите, какой контекст отмечен звёздочкой; при стандартном Docker Desktop для macOS обычно нуженdesktop-linux. Используйтеdocker context use desktop-linuxтолько когда такой контекст существует и не требуется другой рабочий движок. - Разрешите привилегированные настройкиЕсли macOS показывает системное разрешение для официально установленного Docker Desktop, внимательно прочитайте имя приложения и назначение запрашиваемого помощника. Подтверждайте пароль macOS только в системном диалоге для доверенной установки, полученной из
docker.com. При отказе установки вспомогательного компонента проверьте в «Системные настройки» → «Конфиденциальность и безопасность» наличие сообщения о блокировке (пункты отличаются по macOS). Не обходите защиту Gatekeeper и не запускайте неизвестные скрипты сsudo. - Сбросьте Docker до заводских настроекЕсли приложение открывается, но постоянно падает, используйте Docker Desktop → «Troubleshoot» для просмотра диагностических данных и отправки отчёта. Прежде чем выбирать «Clean up data» или «Reset to factory defaults», определите, нужны ли локальные контейнеры, образы, именованные тома и базы данных. Эти операции могут уничтожить невосстановимые данные. Сделайте проверенную копию нужных томов и настроек по документации Docker; сброс не является обычным шагом для начинающего пользователя. Без резервной копии остановитесь и обратитесь к администратору.
- ПереустановитеПолная переустановка нужна только при подтверждённом повреждении установки и наличии проверенных резервных копий. Используйте встроенный пункт «Troubleshoot» → «Uninstall Docker Desktop», если он доступен, либо официальную инструкцию удаления для вашей macOS. Не удаляйте вручную
~/Library/Containers/com.docker.dockerи не запускайтеdocker system prune: это может удалить нужные ресурсы. После установки из официального дистрибутива откройте Dashboard, проверьтеdocker version(раздел Server) и тестовый запуск, затем восстановите данные из копии. - Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
Если Docker Desktop не подходит по условиям лицензии или политике организации, изучите официальные возможности Colima/Podman с администратором. Они имеют собственные способы запуска виртуальной машины, контекстов и управления томами; нельзя гарантировать, что все команды и настройки Docker Desktop будут перенесены без изменений.