2016-08-16 6 views
0

Я пробовал все: добавьте пользователя, попробовал его с sudo, но я не исправил его.Не удается подключиться к docker daemon

Я пробовал как: SUDO Docker пс и Докер пс

Docker версия: 1.11.2 OS/Archlinux

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

systemctl status docker : 
● docker.service - Docker Application Container Engine 
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) 
Active: active (running) since Tue 2016-08-16 12:34:14 UTC; 13min ago 
Docs: https://docs.docker.com 
Main PID: 2323 (docker) 
Tasks: 21 (limit: 4915) 
Memory: 24.2M 
    CPU: 649ms 
CGroup: /system.slice/docker.service 
     ├─2323 /usr/bin/docker daemon -H fd:// 
     └─2339 docker-containerd -l /var/run/docker/libcontainerd /docker-containerd.sock --runtime docker-run 
Aug 16 12:34:13 localhost docker[2323]: time="2016-08-16T12:34:13.730808484Z" level=info msg="[graphdriver] usin 
Aug 16 12:34:13 localhost docker[2323]: time="2016-08-16T12:34:13.762838102Z" level=info msg="Graph migration to 
Aug 16 12:34:13 localhost docker[2323]: time="2016-08-16T12:34:13.769883452Z" level=info msg="Firewalld running: 
Aug 16 12:34:14 localhost docker[2323]: time="2016-08-16T12:34:14.023823826Z" level=info msg="Default bridge (do 
Aug 16 12:34:14 localhost docker[2323]: time="2016-08-16T12:34:14.179897054Z" level=info msg="Loading containers 
Aug 16 12:34:14 localhost docker[2323]: time="2016-08-16T12:34:14.179994020Z" level=info msg="Loading containers 
Aug 16 12:34:14 localhost docker[2323]: time="2016-08-16T12:34:14.180008132Z" level=info msg="Daemon has complet 
Aug 16 12:34:14 localhost docker[2323]: time="2016-08-16T12:34:14.180026066Z" level=info msg="Docker daemon" com 
Aug 16 12:34:14 localhost docker[2323]: time="2016-08-16T12:34:14.187118716Z" level=info msg="API listen on 0.0. 
Aug 16 12:34:14 localhost systemd[1]: Started Docker Application Container Engine. 


ps aux | grep docker 
root  2681 0.1 0.9 553580 35416 ?  Ssl 12:59 0:00 /usr/bin/docker daemon -H fd:// 
root  2694 0.0 0.3 287016 11724 ?  Ssl 12:59 0:00 docker-containerd -l /var/run/docker/libcontainerd/docker-containerd.sock --runtime docker-runc --start-timeout 2m 
cuneyt 2835 0.0 0.0 11056 2228 pts/1 S+ 13:01 0:00 grep docker 

EDIT: Когда я бегу Мануалы Docker демон работает и API прослушивания /var/run/docker.sock

Когда я запустить его с начальной systemctl Docker API Слушать на 0.0.0.0: 3000 Я думаю, что это проблема, но я не знаю, как это исправить?

systemctl cat docker.service 

[Service] 
Type=notify 
# the default is not to use systemd for cgroups because the delegate issues still 
# exists and systemd currently does not support the cgroup feature set required 
# for containers run by docker 
ExecStart=/usr/bin/docker daemon -H fd:// 
MountFlags=slave 
LimitNOFILE=1048576 
LimitNPROC=1048576 
LimitCORE=infinity 
TimeoutStartSec=0 
# set delegate yes so that systemd does not reset the cgroups of docker containers 
Delegate=yes 

[Install] 
WantedBy=multi-user.target 
+0

ли вы хорошо следили за процесс установки? https://wiki.archlinux.org/index.php/Docker –

+0

Да:/он работает на другом компьютере – mk3

+0

Пожалуйста, вставьте выходные данные 'systemctl cat docker.service' – Boynux

ответ

0

Установка documentation состояние:

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

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

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

Войти как пользователь с правами SUDO. (тот, который вы использовали для установки докера) Создайте группу докеров.

$ sudo groupadd docker 

Добавить пользователя в группу докеров.

$ sudo usermod -aG docker $USER 

Выйдите из системы и снова войти в систему. Это гарантирует, ваш пользователь работает с правильными разрешениями. Проверьте свою работу, запустив докер без sudo.

$ docker run hello-world 

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

$ unset DOCKER_HOST 

Надеется, что это помогает