Подтвердить что ты не робот

Ubuntu 16.04 → ОШИБКА: Не удалось подключиться к демону Docker - вам может потребоваться запустить "старт по умолчанию для докеров",

Я получаю ошибку на ubuntu 16.04

"ОШИБКА: Не удалось подключиться к демону Docker - вам может потребоваться запустить запуск docker- machine start default ".

когда я запускаю следующую команду

sudo docker-compose up

Может ли кто-нибудь ответить?

4b9b3361

Ответ 1

предполагая, что переменные среды заданы с помощью следующей команды оболочки:

eval "$(docker-machine env default)"

то вы можете найти точную ошибку, выполнив следующую команду оболочки:

docker-compose --verbose up -d

во много раз его проблема с прокси-сервером, или если вы используете его с помощью прокси-сервера charles, он может заблокировать сбор с подключением и т.д., если это проблема с прокси-сервером, вы можете добавить это в свой профиль:

export no_proxy=192.168.99.100

Ответ 2

Запуск демона Docker

Используйте следующую команду:

sudo systemctl start docker  

или в более старых дистрибутивах, вам может потребоваться использовать:

sudo service docker start

Ответ 3

Вы должны добавить своего пользователя в группу докеров. И тогда вы можете использовать команду docker без 'sudo'.

$ sudo usermod -aG docker ${USER}
$ sudo service docker restart

Затем вы должны выйти из своей ОС. Наконец, при входе в систему вы можете использовать команду docker без 'sudo'.

Ответ 4

Если вы установили Docker как пакет snap, попробуйте следующее:

sudo snap start docker

Ответ 5

Я заметил, что я получил эту ошибку после установки docker-compose. Попытка запустить sudo docker-compose build дала мне ошибку -

ОШИБКА: Не удалось подключиться к демону Docker. Возможно, вам потребуется установить Docker

Я решил это, установив docker-ce (Ubuntu 16.04 и 18.04). После этого все работало как ожидается

Ответ 6

В моем конкретном случае служба mysql, указанная в моем файле docker-compose.yml, создала том с именем mysql_data в корневом каталоге проекта. Проблема в том, что этот каталог и содержащиеся в нем файлы были созданы с помощью пользователя 999 и группы докеров. Итак, мы, по сути, создали себе проблему с разрешениями, которую можно все вместе устранить, используя методы, описанные в разделе Обработка разрешений с томами Docker.

Однако, чтобы исправить возникшую ситуацию, вы должны определить, какой объем данных вызывает проблему. В моем конкретном случае это был том mysql_data, поэтому я выполнил следующее в корневом каталоге проекта, чтобы изменить владельца файла и каталога на принадлежность текущего пользователя, вошедшего в систему:

sudo chown -R ${USER}:${USER} mysql_data

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

sudo chown -R ${USER}:${USER} .

Теперь, если ваш проект находится под контролем исходного кода Git, в результате выполнения одной из вышеперечисленных команд у вас теперь будет ситуация, когда владение файлом и каталогом отличается от владения в базе данных хранимых объектов git. Скорее всего, вы столкнетесь с ошибками, похожими на " git: Unable to index file ", в этом случае - перед дальнейшим добавлением и фиксацией каких-либо файлов в репозиторий вашего git-проекта вы должны убедиться, что файлы принадлежат git. База данных объектов является точным зеркалом владения файлом вашего проекта. Вы можете убедиться в этом, выполнив следующее в корне проекта:

sudo chown -R ${USER}:${USER} .git/objects

Теперь, исправив первоначальные ошибки, с которыми вы столкнулись, теперь вы можете выполнить исходную команду docker-compose, которая первоначально привела к ошибке "Не удалось подключиться к Docker Daemon".

Ответ 7

Нам нужно перезагрузить докер

$ sudo service docker restart

кликните сюда

Ответ 8

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

$ sudo usermod -aG docker ${USER}
$ su - ${USER}
$ id -n
$ sudo usermod -aG docker username

и может перезапустить докер после этого:

systemctl restart docker

Ответ 9

Попробуйте запустить с правами root: sudo docker-compose build