Заметка: Этот метод работает только для пользователей, которые установили Docker с помощью диспетчера пакетов APT. Если вы установили Docker через ЩЕЛЧОК , Ссылаться на Решение 5 ниже.
- Откройте Терминал и выполните первую команду - разоблачить докер .
sudo systemctl демаскировать докер
Если мы попытаемся запустить службу докеров, когда докер замаскирован, мы можем столкнуться с ошибкой«Не удалось запустить docker.service: объект замаскирован».Маску можно считать более надежным вариантом отключения. Когда файл модуля замаскирован, модуль связывается с‘Dev / null. ’Вы можете просмотреть состояние всех файлов объекта с помощью команды -‘ $ systemctl список-единиц-файлов '
2. После того, как докер разоблаченный , мы можем запустить докер демон с помощью команды systemctl. В докер демон управляет объектами докеров, такими как изображения, контейнеры и запросы API Docker. Выполните приведенную ниже команду в командной строке.
systemctl запустить докер
Запустить службу Docker
3. Чтобы проверить есть ли докер-сервис активен и работает . Мы будем использовать systemctl статус команда, которая показывает текущий статус конкретной службы. Выполните приведенную ниже команду на своем Терминале.
Докер состояния systemctl
Статус службы Docker
На изображении выше мы видим, что докер активен и работает .
Решение 2. Удалите ошибку «Failed Docker Pull» и запустите службу Docker
Бывают случаи, когда вы можете неожиданно закрыть Docker при извлечении контейнера. Такие ситуации скроют docker.service и докер. сокет файлы. Docker.socket - это файл, расположенный по адресу ‘/var/run/docker.sock 'и используется для связи с демоном Docker. Нам нужно будет разоблачать файлы из двух единиц - docker .service и docker.daemon раньше продолжение к запустить докер.
- Запустить Терминал и выполнить команды ниже:
systemctl unmask docker.service systemctl unmask docker.socket systemctl start docker.service
Запустить службу Docker
Если вы все еще сталкиваетесь с ошибкой даже после выполнения приведенных ниже команд, нам нужно будет удалять файлы в Containerd каталог перед повторным запуском Docker. Containerd - это функция, представленная в Docker 1.11, которая используется для управления жизненным циклом образов Docker.
2. Откройте Терминал и выполните приведенные ниже команды. Убедитесь, что вы знаете пароль root поскольку нам потребуются повышенные привилегии для выполнения команд.
sudo su service docker stop cd / var / run / docker / libcontainerd rm -rf containerd / * rm -f docker-containerd.pid запуск докера службы
Перезапустить службу докеров
Решение 3. Запустите службу Dockerd (Docker Daemon)
Dockerd - это демон Docker, который слушает API-интерфейсы Docker и управляет различными объектами Docker. Dockerd можно использовать как альтернативу команде ‘ $ systemctl запустить докер ', Который также используется для запуска демона Docker.
- открыто Терминал и запустить dockerd выполнив команду ниже:
sudo dockerd
Запустить dockerd
Решение 4. Запустите Docker с помощью команды Service
Если вы используете Система инициализации SysV , то команда systemctl вам не подойдет. Нам нужно будет использовать служебная команда к запустить демон докеров .
- запустите Терминал и выполнять команды ниже:
sudo service --status-all sudo service docker start
Запустить службу Docker
Решение 5. Запустите службу Docker с помощью Snap
Если вы установили Docker с Менеджер пакетов Snap , вам нужно будет использовать команду snap для управления демоном docker.
Как правило, Snap автоматически управляет своими услугами. Однако в таких ситуациях, как эта ошибка, потребуется вмешательство вручную. Некоторые из аргументов, которые вы можете использовать с командой snap, включают остановку, запуск и перезапуск. В нашем случае мы будем использовать параметр start.
- Откройте Терминал и выполните команду ниже, чтобы запустить докер .
sudo snap start docker
Запустить Docker
2. Выполните команду ниже, чтобы проверить будь то Сервис Docker был запущен.
службы sudo snap
Что будет список все работает оснастка услуги .
Сервисы Snap
Если приведенные выше команды не работают для вас, попробуйте подключение докера: домашний штекер поскольку по умолчанию он не подключается автоматически. Когда-то сделали, Начало в Докер сервис .
3. Запустите Терминал и выполните следующие команды:
sudo snap connect docker: home: home sudo snap start docker
Запустить Docker
Решение 6. Запустите Docker для пользователей без Root P привилегии
Ошибка также может возникнуть из-за отсутствие повышенных привилегий и у пользователя нет доступа к «unix: ///var/run/docker.sock». К счастью, есть обходной путь. Мы экспортируем переменную Docker Host на localhost через порт 2375.
- Откройте Терминал и выполните команду ниже:
экспорт DOCKER_HOST = tcp: // localhost: 2375
Экспорт хоста Docker
Решение 7. Переустановите Docker
Если указанные выше решения не устраняют ошибку, высока вероятность того, что у вас могут быть ошибки при установке. Чтобы правильно установить Docker в вашей системе Linux, следуйте инструкциям из Официальный сайт Docker .
4 минуты на чтение