2015-12-26 2 views
38

Я установил docker на ubuntu 14.04, он сказал мне, что я установлен успешно. Тогда я вошел sudo docker version, он вернулсяНе удается подключиться к демону Docker. Демон-докер работает на этом хосте?

Client: 
Version:  1.9.1 
API version: 1.21 
Go version: go1.4.2 
Git commit: a34a1d5 
Built:  Fri Nov 20 13:12:04 UTC 2015 
OS/Arch:  linux/amd64 
Cannot connect to the Docker daemon. Is the docker daemon running on this host? 

Я вошел sudo service docker status, я получил

docker start/running, process 8063 

Я попытался sudo docker images и sudo docker info, я получил тот же ответ:

Cannot connect to the Docker daemon. Is the docker daemon running on this host? 

я не знаю почему он вернул это, я попытался вытащить ubuntu, используя sudo docker pull ubuntu, и получил

Using default tag: latest 
Cannot connect to the Docker daemon. Is the docker daemon running on this host? 

Скажите, пожалуйста, как я могу решить эту проблему, как я могу вытащить и запустить изображение докеров. И есть docker -d так же, как docker deamon?

ответ

45

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

sudo usermod -aG docker <your username> 

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

sudo usermod -aG docker $USER 

Затем перезагрузите систему. Как докер documentation говорит:

докер демон связывается с сокетом Unix вместо TCP порт. По умолчанию Unix socket принадлежит пользователю root и другие пользователи могут иметь доступ к нему с sudo. По этой причине демон docker всегда работает как пользователь root .

Чтобы избежать необходимости использовать sudo при использовании команды docker, создать группу Unix называется docker и добавить в нее пользователей. Когда начинается демон docker , он становится владельцем гнезда Unix для чтения/записи группой docker.

+3

я получил тот же результат на убунте 14.04 LTS, но установка 'Судо usermod -ag докер < ваше имя пользователя> 'с моим именем пользователя не работало. После перезагрузки моей системы я все равно 'Не могу подключиться к демону Docker. Демон-докер работает на этом хосте? Есть идеи? – webtobesocial

+1

Работает ли 'sudo docker' вообще? –

+0

То же самое для меня: ubuntu 14.04 LTS, sudo usermod ..etc ... не работал, а sudo docker ps работает ... – chrx

4

При добавлении пользователя в docker группе не работает, то попробуйте перезапустить службу:

sudo service docker restart 
+1

спасибо, это сработало для меня. –

1

В моем случае рабочий ответ на

$ docker-machine create -d virtualbox default 
$ eval "$(docker-machine env default)" 
+0

это для MacOS, но больше не применимо с 2017 года. –

-1

Не удается подключиться к Докер демон. Демон-докер работает на этом хосте?

Если он показывает эту ошибку, пожалуйста, проверьте ваш TypeCode:

-> docker build -t swagger-ui-builder . 

правильно дали.Если пропустить некоторое значение, покажите ошибку.

Обратитесь к сайту: http://swagger.io/swagger-ui/

0

не уверен, если другие используют этот подход, но когда я сталкиваюсь этот вопрос «Является ли докер демон работает на этом хосте?», Отключение Докер связанные переменные среды помогает распознать демон докеров, запущенный на моей машине. Такое же сообщение об ошибке появляется, когда я открываю новую вкладку в окне терминала, и ее устранение помогает решить проблему.

unset ${!DOCKER_*} 
2

Единственный способ, который работал на меня (на Ubuntu дружественный):

sudo groupadd docker 
sudo gpasswd -a ${USER} docker 
sudo service docker restart 
newgrp docker 

Найдено here

+0

Это сработало для меня, а другой ответ для добавления группы докеров не сделал. – k0pernikus

0

Если все остальные выше решения не работают, вы можете попробовать проверки собственности /var/run/docker.sock:

ls -l /var/run/docker.sock 

Если вы не являетесь владельцем, тогда измените ow тие с помощью команды:

sudo chown *your-username* /var/run/docker.sock 

Тогда вы можете пойти дальше и попытаться выполнив Docker команды без проблем: D

Смежные вопросы