Docker Desktop позволяет пользователям разрабатывать, управлять и делиться докеризованными приложениями, но некоторые из них при запуске приложения получали ошибку Unexpected WSL.
Она может возникнуть как на Windows, так и на Mac, хотя мы наблюдали больше случаев на первой версии. Большинство пользователей, которые недавно столкнулись с сообщением об ошибке Docker Desktop — Unexpected WSL, работали под управлением Windows 11.
Что такое ошибка WSL2 в Docker Desktop?
Ошибки WSL2 при работе с Docker Desktop указывают либо на неправильно настроенные разрешения, либо на отсутствие критически важных компонентов, особенно платформы виртуальных машин, которая является дополнительной функцией в Windows.
Кроме того, если сам WSL не установлен, команды WSL не будут выполняться. Многие сообщали, что причиной могут быть даже проблемы с сетью.
Как исправить неожиданную ошибку WSL в Docker Desktop?
Прежде чем мы перейдем к немного сложным решениям, попробуйте эти быстрые:
Проверьте, соответствует ли ваше устройство минимальным требованиям для Docker Desktop. Перезагрузите компьютер. Если вам приходится каждый раз перезагружать компьютер, чтобы запустить Docker Desktop, попробуйте другие решения. Проверьте наличие обновлений и установите последнюю версию Docker Desktop с официального сайта. Также обновите операционную систему. Это помогло многим, кто столкнулся с сообщением An unexpected error occurred. Перезапустите сообщение Docker Desktop. Убедитесь, что Docker Desktop запущен с правами администратора, чтобы исключить любые проблемы с правами доступа. Это также поможет, если Docker Desktop долго не запускается. Отключите на компьютере сторонние антивирусы.
Если ни один из способов не помог, перейдите к следующим исправлениям.
1. Установите WSL
Нажмите Windows + S, чтобы открыть Поиск, введите Командная строка в строке поиска и нажмите Запуск от имени администратора.
Нажмите Да в приглашении UAC. Теперь вставьте следующую команду и нажмите Enter, чтобы установить WSL: wsl —install
После этого перезагрузите компьютер и проверьте наличие улучшений.
Если Windows Subsystem for Linux не установлена, вы получите сообщение Docker Desktop — Unexpected WSL error. После этого также включите Hyper-V на устройстве. Необходимо запустить Docker Desktop.
2. Обновить WSL
Нажмите Windows + R, чтобы открыть "Выполнить", введите cmd, и нажмите Ctrl + Shift + Enter. Нажмите Да в появившемся приглашении. Вставьте следующую команду и нажмите Enter, чтобы обновить WSL: wsl —update
Если установлены какие-либо обновления, перезагрузите компьютер.
3. Измените настройки.файл json
Нажмите Windows + E, чтобы открыть File Explorer, вставьте следующий путь в адресную строку и нажмите Enter: %Appdata%\Docker
Дважды щелкните на settings.json файл. Убедитесь в том, что он имеет следующий вид:
"integratedWslDistros" : [ ]
"enableIntegrationWithDefaultWslDistro" : false
Если требуется, внесите необходимые изменения и сохраните их. После этого перезапустите проект, и он больше не должен выдавать ошибку Docker Desktop failed to start WSL2.
4. Изменение настроек командной строки
Нажмите Windows + S, чтобы открыть Поиск, введите Командная строка, щелкните правой кнопкой мыши на соответствующем результате и выберите Запуск от имени администратора. Щелкните Да в появившемся приглашении UAC. Теперь щелкните правой кнопкой мыши на верхней панели и выберите Свойства в контекстном меню.
Перейдите на вкладку Параметры, установите флажок Использовать устаревшую консоль, и нажмите OK, чтобы сохранить изменения.
5. Сбросить winsock
Нажмите Windows + R, чтобы открыть "Выполнить", введите cmd, удерживая клавиши Ctrl + Shift, нажмите OK. Нажмите Да в приглашении. Теперь вставьте две следующие команды по отдельности и нажмите Enter после каждой, чтобы сбросить поврежденные или неправильно настроенные сетевые параметры: netsh int ip reset netsh winsock reset
Перезагрузите компьютер и проверьте, исчезла ли ошибка Docker Desktop failed to start.
6. Включите аппаратную виртуализацию в BIOS
Выключите компьютер, затем включите его, и, как только появится дисплей, продолжайте нажимать клавиши F2, F10, F12, Esc или Del, чтобы получить доступ к BIOS, в зависимости от производителя системы. Теперь с помощью клавиш со стрелками перейдите к пункту Advanced или вкладку Конфигурация системы, а затем выберите Технология виртуализации.
Наконец, выберите Включить, затем сохраните изменения и выйдите из BIOS.
Для корректной работы Docker Desktop необходимо включить поддержку виртуализации на ПК. В противном случае вы можете получить ошибку Docker Desktop — Unexpected WSL error.
7. Переустановите WSL
Нажмите Windows + I, чтобы открыть Настройки, на панели навигации перейдите в раздел Приложения и нажмите кнопку Установленные приложения справа.
Теперь найдите Подсистема Windows для Linux, нажмите на многоточие рядом с ним и выберите Деинсталляция.
Снова нажмите Удалите в окне подтверждения. Аналогичным образом удалите следующие записи в разделе "Установленные приложения", если они существуют: Linux
Ubuntu
Теперь вернитесь на вкладку "Приложения" и выберите Дополнительные функции.
Нажмите на Другие возможности Windows внизу. Снимите флажок Платформа виртуальной машины и Windows Subsystem for Linux, затем нажмите OK чтобы сохранить изменения.
Перезагрузите компьютер, чтобы изменения были применены. После этого переустановите WSL (Windows Subsystem for Linux).
Если ничего не помогает, вы всегда можете переустановить WSL и избавиться от ошибки Docker Desktop — Unexpected WSL error. Начните с деинсталляции WSL, а затем заново загрузите все компоненты.
Что является альтернативой Docker Desktop в Windows WSL?
Существует несколько альтернатив для Docker Desktop, и многие пользователи переходят на них, учитывая недавние изменения в лицензионных условиях проекта. Вот популярные варианты:
Рабочий стол Rancher
Minikube
Podman
При переходе на другое программное обеспечение проверьте совместимость с вашей ОС, набор функций, производительность, простоту использования, эффективность работы службы поддержки и частоту выпуска обновлений.
Вы наверняка уже устранили ошибку Docker Desktop — Unexpected WSL. А если это не так, дождитесь обновления или перейдите на надежную альтернативу. Вы знаете все варианты!
Кроме того, пользователи сталкиваются и с другими ошибками установки. Например, многие сталкивались с ошибкой Hyper-V и контейнерные функции Windows должны быть включены при установке Docker Desktop, но ее легко исправить!
Если у вас возникли вопросы или вы хотите поделиться тем, что помогло вам, пишите в комментариях ниже.