Ubuntu 22.04 Docker Desktop 4.12 застрял в состоянии выполнения

Вопрос или проблема

Исследование

Прежде чем отметить как дубликат, я провел свое исследование. Я также попробовал предложение добавить $USER в группу docker, и вышел из системы, снова вошел, даже перезагрузил, выполнил newgrp docker, все это сделано здесь

Я просто сделал то, что написано здесь в документации для установки Docker Desktop через deb пакет, включая настройку репозитория здесь, плюс шаг постустановки, который упоминает о добавлении пользователя в группу docker. Обратите внимание, что я не устанавливал Docker Engine, потому что думал, что это не нужно для Docker Desktop, это правильно, да?

Кажется, у меня совершенно другая проблема

Результат

После установки я просто запускаю systemctl --user start docker-desktop, что открывает DD (Docker Desktop), и он просто говорит “docker desktop starting .. “

Вот некоторые, возможно, связанные результаты в ходе моего исследования:

  1. sudo docker run hello-world
docker: Невозможно подключиться к демону Docker по адресу unix:///var/run/docker.sock. Запущен ли демон docker?.
  1. docker run hello-world
docker: Невозможно подключиться к демону Docker по адресу unix:///home/name/.docker/desktop/docker.sock. Запущен ли демон docker?.
См. 'docker run --help'.
  1. ls -la /var/run/docker.sock
srw-rw---- 1 root docker 0  26 сен 22:53 /var/run/docker.sock
  1. docker version
Ошибка ответа от демона: соединение unix docker.raw.sock: подключение: такого файла или директории нет
Клиент: Docker Engine - Community
 Интеграция с облаком: v1.0.29
 Версия:           20.10.18
 Версия API:       1.41
 Версия Go:        go1.18.6
 Коммит Git:        b40c2f6
 Сборка:             Чт сен  8 23:11:43 2022
 ОС/Архитектура:           linux/amd64
 Контекст:           desktop-linux
 Экспериментальный:      true
  1. service docker status или sudo systemctl restart docker

Юнит docker.service не найден.

Номер 5 действительно странный, я не нашел такого в других постах. Как исправить ошибку “Юнит docker.service не найден.”, здесь просто упоминают установку из snap, но это не мой случай.

Любая помощь будет очень признательна, я застрял на ~6 часов, пытаясь отладить это 🙏

Также недавно столкнулся с этой проблемой. Просто скопируйте и вставьте официальные инструкции здесь, на случай, если сайт изменится, и кому-то потребуется это конкретное решение.

Модуль kvm должен загружаться автоматически, если хост поддерживает виртуализацию. Для ручной загрузки модуля выполните:

$ modprobe kvm

В зависимости от процессора хост-машины, соответствующий модуль должен быть загружен:

$ modprobe kvm_intel # процессоры Intel

$ modprobe kvm_amd # процессоры AMD

Если вышеуказанные команды не работают, вы можете просмотреть диагностику, выполнив:

$ kvm-ok

Чтобы проверить, включены ли модули KVM, выполните:

$ lsmod | grep kvm
kvm_amd               167936  0
ccp                   126976  1 kvm_amd
kvm                  1089536  1 kvm_amd
irqbypass              16384  1 kvm

Настройте разрешения пользователя для устройства KVM

Чтобы проверить право собственности на /dev/kvm, выполните :

$ ls -al /dev/kvm

Добавьте своего пользователя в группу kvm, чтобы получить доступ к устройству kvm:

$ sudo usermod -aG kvm $USER

Выйдите из системы и войдите снова, чтобы ваша группа была переоценена.

Ответ или решение

Проблема: Docker Desktop на Ubuntu 22.04 застревает на стадии "Запуск"

Ситуация, при которой Docker Desktop не может перейти в рабочее состояние и зависает на экране "Docker Desktop Starting…", является распространенной и может быть вызвана рядом факторов. Давайте разберем вашу проблему более подробно и предложим возможные решения.

Шаг 1: Проверка установки Docker Desktop

Вы упомянули, что вы предприняли шаги для установки Docker Desktop согласно официальной документации, но не устанавливали Docker Engine. Хотя Docker Desktop должен работать без Docker Engine, убедитесь, что вы выполнили все запросы и предустановленные условия, указанные в документации:

  1. Убедитесь, что система обновлена командой:

    sudo apt update && sudo apt upgrade
  2. Проверьте, установлены ли все необходимые зависимости для работы Docker Desktop, такие как curl, apt-transport-https и ca-certificates.

Шаг 2: Проверка прав доступа к Docker

Ваша попытка выполнить команды sudo docker run hello-world и docker run hello-world возвращает ошибки, связанные с отсутствием соединения с демоном Docker. Это может указывать на проблемы с правами доступа или на то, что демон не запущен.

  1. Убедитесь, что ваш пользователь добавлен в группу docker:

    sudo usermod -aG docker $USER
  2. После этого вам необходимо выйти и войти в систему, чтобы изменения вступили в силу. Вы также можете выполнить команду:

    newgrp docker

Шаг 3: Криптографическая проверка компонентов KVM

Docker Desktop для Linux зависит от виртуализации, которая обеспечивает KVM (Kernel-based Virtual Machine). Убедитесь, что виртуализация включена в BIOS и выполните следующие команды для проверки:

  1. Проверьте установку KVM:

    kvm-ok
  2. Если KVM не установлен, загрузите модуль вручную:

    sudo modprobe kvm

    В зависимости от вашего процессора выполните одну из следующих команд:

    sudo modprobe kvm_intel  # для процессоров Intel
    sudo modprobe kvm_amd    # для процессоров AMD
  3. Проверьте права доступа к /dev/kvm:

    ls -al /dev/kvm

    Если ваша учетная запись не имеет доступа, добавьте себя в группу kvm:

    sudo usermod -aG kvm $USER

    И снова, не забудьте выйти и войти обратно в систему.

Шаг 4: Исследование статуса демонов и сокетов

Ваша команда service docker status или sudo systemctl restart docker возвращает ошибку "Unit docker.service could not be found". Это может указывать на то, что Docker Desktop использует собственный механизм управления, и служба Docker не устанавливается в этом случае.

Если вы все равно хотите использовать Docker Engine, убедитесь, что вы установили его:

sudo apt install docker.io

А затем выполните:

sudo systemctl enable docker
sudo systemctl start docker

Шаг 5: Диагностика

Для дальнейшей диагностики, включите детализированный уровень логирования для Docker Desktop. Логи можно найти:

~/.docker/desktop/data/log.log

Просмотрите логи на наличие ошибок или предупреждений, которые могут указывать на источник проблемы.

Заключение

Если ни одно из вышеуказанных решений не помогло, рекомендую удалить Docker Desktop и попытаться установить его снова, следуя инструкции с нуля, чтобы избежать возможных ошибок. Также не забудьте проверить официальные форумы и GitHub репозиторий Docker на наличие аналогичных проблем, где участники сообщества иногда сами могут предложить рабочие решения.

Если у вас есть дополнительные сведения или ошибки, не стесняйтесь делиться ими для более точной диагностики.

Оцените материал
Добавить комментарий

Капча загружается...