当我尝试在Mac上使用docker时出现以下错误:
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?
如果我使用sudo
无关紧要......我使用哪个docker命令或使用brew
或boot2docker
进行安装无关紧要。 ..
我该怎么做才能解决这个问题?
答案 0 :(得分:1)
Docker守护程序不能在Mac上本机运行。在此之前,永远不会有一个套接字用于与/var/run/
的守护进程通信。因此,您必须使用TCP与守护程序通信,因为守护程序必须在另一台计算机(或VM)上运行。 Unix套接字只与本地机器上运行的进程通信。 unix套接字方法非常安全,因为它只在本地计算机上,你必须是root(或在docker组中)才能与这个套接字通信。
您可以通过在客户端设置一些环境变量并以不安全的方式在守护程序端启动守护程序,以非常不安全的方式运行Docker Engine:
Client: substitute the machine's host IP and port
DOCKER_HOST=tcp://host:2375
DOCKER_TLS_VERIFY=0
Daemon
docker -d -H tcp://0.0.0.0:2375
(另见https://docs.docker.com/reference/commandline/cli/#daemon-socket-option)
由于您可能不希望随机人员通过互联网与您的docker守护程序通话,因此您应该在启用TLS的情况下运行。这很复杂,但列出了所有步骤in the docs。 Mac上的boot2docker
和kitematic
通过为您设置TLS证书并设置查找守护程序所需的环境变量来隐藏这种复杂性。