我将 docker snap 包添加到我的 Ubuntu 16.04 机器上
sudo snap install docker
现在,当我尝试使用它时,出现以下错误......
无法连接到 Docker 守护程序。docker 守护程序是否在此主机上运行?
答案1
由于不断发展的 snappy 模型中的限制问题,Docker 默认并不完整(请参阅 Snapcraft 论坛上的讨论)。
要获得一些关于如何解决(即打破)限制模型直到正确修复到位的有用说明。您可以简单地检查 snap 中打包的 Docker 帮助应用程序。
$ docker.help
Docker snap: Docker Linux container runtime.
Due to the confinement issues on snappy, it requires some manual setup to make docker-snap works on your machine.
We'll take you through the steps needed to set up docker snap work for you on ubuntu core and ubuntu classic.
On Ubuntu classic, before installing the docker snap,
please run the following command to add the login user into docker group.
sudo addgroup --system docker
sudo adduser $USER docker
newgrp docker
On Ubuntu Core 16, after installing the docker snap from store,
Firstly, you need to connect the two interfaces as they're not auto-connected by default.
sudo snap connect docker:account-control :account-control
sudo snap connect docker:home :home
Secondly, reload the snap and allows the user to login to the new group "docker-snap".
snap disable docker
snap enable docker
newgrp docker-snap
Then have fun with docker in snappy.
最后一个命令失败...
$ newgrp docker-snap
newgrp: group 'docker-snap' does not exist
但是,我没有注意到故障带来的任何负面影响,并且 Docker 现在可以按我预期的方式运行。
答案2
用于snap start docker
激活服务。可能需要 root 权限。
答案3
如果 ...
sudo snap start docker
...没有帮助,尝试删除并重新安装docker
sudo snap remove docker --purge
这还将删除 docker 创建的图像、容器和内容
sudo snap install docker
答案4
我通过运行得到了这个工作:
sudo snap start docker
然后运行sudo
后续的docker命令:
sudo docker-compose up --build
sudo
如果后续的 docker 命令没有运行,Cannot connect to the Docker daemon
错误仍然存在。