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

FATA[0000] Get http:///var/run/docker.sock/v1.17/version: dial unix /var/run/docker.sock

我使用 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?

我在下面提到过,但它对我不起作用。其中大部分集中在 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)

我在 Ubuntu 14.04、3.13.0-39-generic 上遇到了类似的问题 解决方案是:

sudo apt-get install apparmor

service docker restart

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

1) 安装docker

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

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

sudo usermod -aG docker "username"

3) 重启。不知道有没有简单的方法可以避免重启

在重新启动之前,这个 post 和其他的都对我不起作用

在 Fedora 21 上我遇到了同样的问题。我已经安装为 sudo su。在我运行service docker restart之后一切都很好

这个错误是因为您还没有启动docker服务。启动服务后,它会创建 /var/run/docker.sock,然后错误就解决了。

sudo service docker start

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

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

$ docker info

$ FATA[0000] Get http:///var/run/docker.sock/v1.18/info: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?

所以我用 ps aux|grep docker 检查了 docker 守护进程,发现 none。

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

FATA[0000] Shutting down daemon due to errors: Error loading docker apparmor profile: exit status 1 (Feature buffer full.)

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

问题是您的用户尚未添加到 docker 组。

尝试:

sudo usermod -a -G docker <uname>

如果您不想从当前 shell 记录 in/out,运行:

newgrp docker

在 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

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

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

sudo docker version

如果仍然出错,请检查服务是 运行:

sudo service docker start

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

sudo usermod -a -G docker <username>

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

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

Docker manual 很有帮助。有时候。

关于 mac 10.9.5 对我有帮助的是 运行:

eval "$(boot2docker shellinit)"
  1. 停止 docker 守护程序
  2. sudo rm /var/lib/docker/network/files/local-kv.db
  3. 启动docker守护进程

阅读更多: https://github.com/docker/docker/issues/17846

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

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

我试过了:

  1. sudo usermod -a -G docker 你的用户名
  2. 重启shell

这对我有用。

按照以下解决方案:

sudo chmod -R 777 docker.sock