我已经在Oracle VM中存在的Linux Mint 17 Qiana(基于Ubuntu 14.04)中安装了docker。如果我尝试启动,则会显示以下错误,
FATA[0000] Get http:///var/run/docker.sock/v1.18/containers/json: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?
当我尝试对同一内容进行谷歌搜索时,找不到任何有用的信息。这个stackoverflow问题建议重启我的系统,但是它不起作用。
我看到以下相关问题无济于事。
/var/run/docker.sock:没有这样的文件或目录。您是否要连接到没有TLS的启用TLS的守护程序?
Docker:您是否要连接到没有TLS的启用TLS的守护程序? 因此,对此的任何帮助将大有帮助。
我不知道.deb软件包是如何附带的(我正在使用Fedora),但是默认情况下不应该设置TLS,所以我建议遵循一些基本步骤以查看其是否正常运行。
.deb
ps aux | grep docker root 4215 0.1 0.1 440156 17332 ? Ssl 15:48 0:00 /usr/bin/docker -d -D --bip=172.17.42.1/16 --dns=172.17.42.1 --dns-search=docker -s overlay wololock 8986 0.0 0.0 113024 2304 pts/1 S+ 15:50 0:00 /usr/bin/grep docker
如果docker进程未运行,请尝试sudo /etc/init.d/docker start或sudo service docker start
sudo /etc/init.d/docker start
sudo service docker start
/var/run/docker.sock
ls -la /var/run/docker.* -rw-r--r--. 1 root root 4 04-23 15:48 /var/run/docker.pid srw-rw----. 1 root docker 0 04-23 15:48 /var/run/docker.sock
这里的重要部分是文件必须按组拥有docker,因此您可以在没有root权限的情况下连接到该文件。
docker
如果docker.sock不存在,则可以尝试在调试模式打开的情况下从命令行运行docker,以查看导致问题的原因:
docker.sock
sudo docker -d -D
id -a uid=1000(wololock) gid=1000(wololock) grupy=1000(wololock),0(root),10(wheel),100(users),977(docker),989(pkg-build)
如果找不到docker组中的用户,请尝试通过以下方式将自己添加到该组中:
sudo gpasswd -a [username] docker
如果以前的尝试无济于事,请尝试从https://docs.docker.com/installation/ubuntulinux/#installing- docker-on- ubuntu获取最新的docker版本,我不确定,但是此行:
FATA[0000] Get http:///var/run/docker.sock/v1.18/containers/json:
建议您使用的是docker v1.18。我可能错了,但是如果是真的,这不是最新的docker版本,应该对其进行升级。我目前使用的是docker v1.5.0,在Fedora 21上运行良好
我们在这里讨论的问题是由于apparmorubuntu/linuxmint发行版中的软件包丢失(或未运行)引起的。修复此问题最简单的方法是安装apparmor:
apparmor
sudo apt-get install apparmor
如果已安装但尚未运行,请使用以下命令启动它:
sudo service apparmor start
希望我的回答能帮助您解决问题。如果你有任何问题随时问。我会尽力为您提供帮助。