FATA [0000]获取http:///var/run/docker.sock/v1.17/version:拨打unix /var/run/docker.sock

时间:2015-03-27 06:03:32

标签: linux docker

我使用this guide安装docker。我正在使用

Distributor ID: Ubuntu
Description:    Ubuntu 13.10
Release:    13.10
Codename:   saucy

即使我在执行docker version命令时,我仍然遵循给出的步骤,但我得到了以下错误。

Client version: 1.5.0
Client API version: 1.17
Go version (client): go1.4.1
Git commit (client): a8a31ef
OS/Arch (client): linux/amd64
FATA[0000] Get http:///var/run/docker.sock/v1.17/version: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?

我在下面提到了aleardy,但它对我不起作用。其中大多数都专注于Mac OS X

Installing a web application in a Docker container: dial unix /var/run/docker.sock: no such file or directory

docker error: /var/run/docker.sock: no such file or directory

Am I trying to connect to a TLS-enabled daemon without TLS?

我该如何解决这个问题?

请参阅下面的O / P

INFO[0000] +job serveapi(unix:///var/run/docker.sock)   
INFO[0000] Listening for HTTP on unix (/var/run/docker.sock) 
DEBU[0000] Registering POST, /containers/{name:.*}/resize 
DEBU[0000] Registering POST, /containers/create         
DEBU[0000] Registering POST, /containers/{name:.*}/kill 
DEBU[0000] Registering POST, /containers/{name:.*}/start 
DEBU[0000] Registering POST, /containers/{name:.*}/stop 
DEBU[0000] Registering POST, /containers/{name:.*}/copy 
DEBU[0000] Registering POST, /containers/{name:.*}/exec 
DEBU[0000] Registering POST, /exec/{name:.*}/start      
DEBU[0000] Registering POST, /auth                      
DEBU[0000] Registering POST, /build                     
DEBU[0000] Registering POST, /containers/{name:.*}/wait 
DEBU[0000] Registering POST, /containers/{name:.*}/attach 
DEBU[0000] Registering POST, /images/{name:.*}/tag      
DEBU[0000] Registering POST, /containers/{name:.*}/pause 
DEBU[0000] Registering POST, /containers/{name:.*}/rename 
DEBU[0000] Registering POST, /commit                    
DEBU[0000] Registering POST, /images/create             
DEBU[0000] Registering POST, /images/load               
DEBU[0000] Registering POST, /images/{name:.*}/push     
DEBU[0000] Registering POST, /containers/{name:.*}/unpause 
DEBU[0000] Registering POST, /containers/{name:.*}/restart 
DEBU[0000] Registering POST, /exec/{name:.*}/resize     
DEBU[0000] Registering DELETE, /containers/{name:.*}    
DEBU[0000] Registering DELETE, /images/{name:.*}        
DEBU[0000] Registering OPTIONS,                         
DEBU[0000] Registering GET, /containers/{name:.*}/json  
DEBU[0000] Registering GET, /events                     
DEBU[0000] Registering GET, /images/search              
DEBU[0000] Registering GET, /images/get                 
DEBU[0000] Registering GET, /images/{name:.*}/get       
DEBU[0000] Registering GET, /images/{name:.*}/history   
DEBU[0000] Registering GET, /containers/json            
DEBU[0000] Registering GET, /containers/{name:.*}/export 
DEBU[0000] Registering GET, /info                       
DEBU[0000] Registering GET, /images/viz                 
DEBU[0000] Registering GET, /containers/{name:.*}/top   
DEBU[0000] Registering GET, /containers/{name:.*}/logs  
DEBU[0000] Registering GET, /containers/{name:.*}/stats 
DEBU[0000] Registering GET, /exec/{id:.*}/json          
DEBU[0000] Registering GET, /_ping                      
DEBU[0000] Registering GET, /images/json                
DEBU[0000] Registering GET, /images/{name:.*}/json      
DEBU[0000] Registering GET, /containers/{name:.*}/attach/ws 
DEBU[0000] Registering GET, /version                    
DEBU[0000] Registering GET, /containers/ps              
DEBU[0000] Registering GET, /containers/{name:.*}/changes 
DEBU[0000] docker group found. gid: 999                 
DEBU[0000] Using graph driver aufs                      
DEBU[0000] Migrating existing containers                
DEBU[0000] Creating images graph                        
DEBU[0000] Restored 0 elements                          
DEBU[0000] Creating repository list                     
INFO[0000] +job init_networkdriver()                    
DEBU[0000] /sbin/iptables, [--wait -C POSTROUTING -t nat -s 172.17.42.1/16 ! -o docker0 -j MASQUERADE] 
DEBU[0000] /sbin/iptables, [--wait -D FORWARD -i docker0 -o docker0 -j DROP] 
DEBU[0000] /sbin/iptables, [--wait -C FORWARD -i docker0 -o docker0 -j ACCEPT] 
DEBU[0000] /sbin/iptables, [--wait -C FORWARD -i docker0 ! -o docker0 -j ACCEPT] 
DEBU[0000] /sbin/iptables, [--wait -C FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[0000] /sbin/iptables, [--wait -t nat -D PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t nat -D OUTPUT -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8 -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t nat -D OUTPUT -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t nat -D PREROUTING -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t nat -D OUTPUT -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t nat -F DOCKER]    
DEBU[0000] /sbin/iptables, [--wait -t nat -X DOCKER]    
DEBU[0000] /sbin/iptables, [--wait -t nat -n -L DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t nat -N DOCKER]    
DEBU[0000] /sbin/iptables, [--wait -C -m addrtype --dst-type LOCAL] 
DEBU[0000] /sbin/iptables, [--wait -t nat -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -C -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8] 
DEBU[0000] /sbin/iptables, [--wait -t nat -A OUTPUT -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8 -j DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -t filter -n -L DOCKER] 
DEBU[0000] /sbin/iptables, [--wait -C FORWARD -o docker0 -j DOCKER] 
INFO[0000] -job init_networkdriver() = OK (0)           
INFO[0000] WARNING: Your kernel does not support cgroup swap limit. 
DEBU[0000] Restarting containers...                     
INFO[0000] docker daemon: 1.5.0 a8a31ef; execdriver: native-0.2; graphdriver: aufs 
INFO[0000] +job acceptconnections()                     
INFO[0000] -job acceptconnections() = OK (0)            
DEBU[0022] Calling GET /version                         
INFO[0022] GET /v1.17/version                           
INFO[0022] +job version()                               
INFO[0022] -job version() = OK (0)

13 个答案:

答案 0 :(得分:34)

我在Ubuntu 14.04上有类似的问题,3.13.0-39-generic 解决方案是:

sudo apt-get install apparmor

service docker restart

答案 1 :(得分:30)

此错误是因为您尚未启动docker服务。启动服务后,它会创建/var/run/docker.sock,然后解决错误。

sudo service docker start

然后,您可以sudo docker info查看安装是否正确。

答案 2 :(得分:30)

问题是您的用户尚未添加到泊坞窗组。

尝试:

sudo usermod -a -G docker <uname>

如果您不想从当前shell登录/注销,请运行:

newgrp docker

答案 3 :(得分:23)

我有Ubuntu 14.04,3.16.0-33-generic。这些步骤对我有用:

1)安装docker

  

wget -qO- https://get.docker.com/ | SH

2)将您的用户添加到泊坞组:

  

sudo usermod -aG docker&#34; username&#34;

3)重新启动。我不知道是否有一种简单的方法可以避免重启。

在重新启动之前,这篇文章和其他人都没有为我工作

答案 4 :(得分:6)

1)创建一个docker

sudo groupadd docker

2)将<enter_username>添加到已创建的docker

sudo usermod -aG docker <enter_username>

3)重启系统

sudo reboot

4)验证是否不再需要使用sudo运行命令

执行:docker run hello-world应该导致:

[user@host ~]$ docker run hello-world

Hello from Docker.
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker Hub account:
 https://hub.docker.com

For more examples and ideas, visit:
 https://docs.docker.com/userguide/

参考

Create a docker group

enter image description here

答案 5 :(得分:5)

当你第一次安装时,你需要使用sudo,因为docker需要绑定到root所拥有的Unix套接字:

sudo docker version

如果仍然出现错误,请检查服务是否正在运行:

sudo service docker start

如果您想避免使用sudo,请尝试创建并将自己添加到docker组。

sudo usermod -a -G docker <username>

要激活此更改,请执行,newgrp docker,注销/登录或重新启动计算机。如果使用newgrp docker,您可能还需要重新启动docker守护程序。 (sudo service docker restart)(注意,docker组相当于root ...)

(AppArmor我的工作因为它限制了所有应用程序访问,我不知道它会如何影响Docker)

Docker manual很有帮助。有时。

答案 6 :(得分:3)

在OS X上,boot2docker up输出:

To connect the Docker client to the Docker daemon, please set: export DOCKER_CERT_PATH=/Users/thsoft/.boot2docker/certs/boot2docker-vm export DOCKER_TLS_VERIFY=1 export DOCKER_HOST=tcp://192.168.59.103:2376

执行这些命令解决了我的问题。

答案 7 :(得分:1)

在Fedora 21上我遇到了同样的问题。我安装了sudo su。我跑完service docker restart后一切都很顺利。

答案 8 :(得分:1)

我在docker中遇到错误,@ mrother的答案确实有效。可能问题是不同的,所以我只是把它作为某人的信息。我是新来的,无法添加评论或投票,所以我必须添加一个答案。问题如下:

  

$ docker info

     

$ FATA [0000]获取http:///var/run/docker.sock/v1.18/info:拨打unix /var/run/docker.sock:没有这样的文件或目录。您是否尝试连接到没有TLS的启用TLS的守护程序?

所以我用ps aux|grep docker检查了docker守护进程,但没找到。

所以我运行docker -d mannully得到了这个:

  

FATA [0000]由于错误而关闭守护程序:加载docker apparmor配置文件时出错:退出状态1(功能缓冲区已满。)

然后sudo apt-get install apparmor解决了这个问题。

答案 9 :(得分:1)

请遵循以下解决方案:

sudo chmod -R 777 docker.sock

答案 10 :(得分:0)

在mac 10.9.5上有什么帮助我运行:

eval "$(boot2docker shellinit)"

答案 11 :(得分:0)

  1. 停止docker守护程序
  2. sudo rm /var/lib/docker/network/files/local-kv.db
  3. 启动docker守护程序
  4. 了解更多: https://github.com/docker/docker/issues/17846

答案 12 :(得分:0)

我在ubuntu 14.04上有这个: FATA [0000]发布http:///var/run/docker.sock/v1.18/containers/create:拨打unix /var/run/docker.sock:权限被拒绝。您是否尝试在没有TLS的情况下连接到启用TLS的守护程序?

我试过了:

  1. sudo usermod -a -G docker yourusername
  2. 重新启动shell
  3. 这对我有用。