Docker命令无法连接到Docker守护程序 [英] Docker command can't connect to Docker daemon
问题描述
$ docker run --name mynginx1 -P -d nginx
无法连接到Docker守护程序。 docker守护进程是否在此主机上运行?
所以我检查了Docker是否正在运行:
$ sudo service docker status
●docker.service - Docker应用程序容器引擎
加载:已装载(/lib/systemd/system/docker.service; enabled ;供应商预设:启用)
活动:活动(运行)自vr 2015-11-06 08:41:48 CET; 15分钟前
文档:https://docs.docker.com
主要PID:7542(docker)
CGroup:/system.slice/docker.service
└─7542/ usr / bin / docker守护程序-H fd://
nov 06 08:41:47 kramer65-VirtualBox systemd [1]:启动Docker应用程序容器引擎...
nov 06 08 :41:47 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:47.900410966 + 01:00level = info msg =API ... ock
nov 06 08:41 :48 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:48.033514149 + 01:00level = info msg =Fire ... lse
nov 06 08:41:48 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:48.141594321 + 01:00level = info msg =Defa ... ess
nov 06 08:41:48 kramer65- VirtualBox docker [7542]:time =2015-11-06T08:41:48.416294436 + 01:00level = warning msg =Y ... it。
nov 06 08:41:48 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:48.565507576 + 01:00level = info msg =Load ... rt。
nov 06 08:41:48 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:48.567907022 + 01:00level = info msg =Load ... ne
nov 06 08:41:48 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:48.567945214 + 01:00level = info msg =Daem ... ion
nov 06 08:41:48 kramer65-VirtualBox docker [7542]:time =2015-11-06T08:41:48.567969891 + 01:00level = info msg =Dock .... 9.0
nov 06 08:41:48 kramer65-VirtualBox systemd [1]:启动Docker应用程序容器引擎
提示:某些行被省略,使用-l来显示
这表明Docker守护程序实际上已经在运行,但是确保我只是手动启动Docker守护程序:
$ sudo docker守护程序
/ pre>
INFO [0000] API收听/var/run/docker.sock
INFO [0000] [graphdriver]使用先前的存储驱动程序aufs
INFO [0000]防火墙运行:false
INFO [0000]默认网桥(docker0)被分配一个IP地址XXX.XX.XX / XX守护进程 - bip可用于设置首选IP地址
WARN [0000]您的内核不支持rt交换内存限制。
INFO [0000]装载容器:启动。
INFO [0000]装载容器:完成。
INFO [0000]守护程序已完成初始化
INFO [0000] Docker守护进程commit = 76d6bc9 execdriver = native-0.2 graphdriver = aufs version = 1.9.0
然后我再次尝试运行图像,但结果相同:
code> $ docker run --name mynginx1 -P -d nginx
无法连接到Docker守护程序。 docker守护进程是否在此主机上运行?
我尝试sudo的命令,但无济于事。我在这里做错了什么?
解决方案您需要添加您当前的用户[假设您以ubuntu身份登录]到docker组如下
sudo usermod -aG docker $(whoami)
然后注销&再次登录进入系统或重新启动系统。
test bydocker version
了解更多信息如何安装docker-engine follow docker文档
I want to make a move to Docker, so I've just started to mess around with it. I've installed Docker on a VirtualBox Ubuntu 15.10 (Wily Werewolf) installation and as suggested here I then tried running a basic nginx Docker image:
$ docker run --name mynginx1 -P -d nginx Cannot connect to the Docker daemon. Is the docker daemon running on this host?
So I checked out whether Docker was running:
$ sudo service docker status ● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since vr 2015-11-06 08:41:48 CET; 15min ago Docs: https://docs.docker.com Main PID: 7542 (docker) CGroup: /system.slice/docker.service └─7542 /usr/bin/docker daemon -H fd:// nov 06 08:41:47 kramer65-VirtualBox systemd[1]: Starting Docker Application Container Engine... nov 06 08:41:47 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:47.900410966+01:00" level=info msg="API ...ock" nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.033514149+01:00" level=info msg="Fire...lse" nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.141594321+01:00" level=info msg="Defa...ess" nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.416294436+01:00" level=warning msg="Y...it." nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.565507576+01:00" level=info msg="Load...rt." nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.567907022+01:00" level=info msg="Load...ne." nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.567945214+01:00" level=info msg="Daem...ion" nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.567969891+01:00" level=info msg="Dock....9.0 nov 06 08:41:48 kramer65-VirtualBox systemd[1]: Started Docker Application Container Engine. Hint: Some lines were ellipsized, use -l to show in full.
This suggests that the Docker daemon is actually already running, but to be sure I just started the Docker daemon manually:
$ sudo docker daemon INFO[0000] API listen on /var/run/docker.sock INFO[0000] [graphdriver] using prior storage driver "aufs" INFO[0000] Firewalld running: false INFO[0000] Default bridge (docker0) is assigned with an IP address XXX.XX.X.X/XX. Daemon option --bip can be used to set a preferred IP address WARN[0000] Your kernel does not support swap memory limit. INFO[0000] Loading containers: start. INFO[0000] Loading containers: done. INFO[0000] Daemon has completed initialization INFO[0000] Docker daemon commit=76d6bc9 execdriver=native-0.2 graphdriver=aufs version=1.9.0
I then tried running the image again, but with the same result:
$ docker run --name mynginx1 -P -d nginx Cannot connect to the Docker daemon. Is the docker daemon running on this host?
I tried sudo'ing the command, but to no avail. What am I doing wrong here?
解决方案You need to add your current user [suppose you're logged in as ubuntu] to docker group as follow
sudo usermod -aG docker $(whoami)
then logout & login again into the system or restart the system. test by
docker version
for further info how to install docker-engine follow docker documentation
这篇关于Docker命令无法连接到Docker守护程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!