macos - 无法连接到 macOS 上的 Docker 守护进程

标签 macos docker macos-sierra

我通常更喜欢使用 brew 在我的 OSX 上管理我的应用程序

我可以安装 docker、docker-compose 和 docker-machine

docker --version
Docker version 17.05.0-ce, build 89658be
docker-compose --version
docker-compose version 1.13.0, build unknown
docker-machine --version
docker-machine version 0.11.0, build 5b27455

我没有下载并运行“Docker for Mac”应用程序。

但是当我尝试运行时

> docker run -d -p 80:80 --name webserver nginx
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.

我已经检查了 sock 文件

ls -lah /var/run/docker.sock /var/tmp/docker.sock
ls: /var/run/docker.sock: No such file or directory
ls: /var/tmp/docker.sock: No such file or directory

我也尝试过这个建议的解决方案:Mac OS X sudo docker Cannot connect to the Docker daemon. Is the docker daemon running on this host?

但我收到此错误消息:

$ eval $(docker-machine env default)
Host does not exist: "default"

是否可以通过命令行工具运行 docker 服务?

最佳答案

在支持的 Mac 上,运行:

brew install --cask docker

然后启动 Docker 应用。点击下一步。它将要求特权访问。确认。鲸鱼图标应出现在顶部栏中。点击它,等待“Docker is running”出现。

您现在应该可以运行 docker 命令了:

docker ps

由于docker是系统级包,不能使用brew install安装,必须使用--cask代替。

注意:此解决方案仅适用于 CPU 支持虚拟化的 Mac,可能不包括旧 Mac。

Edit 2022 - 在评论部分提出了 Docker Desktop 的许可变更。请考虑以下替代方案,并查看评论以了解详细信息。

关于macos - 无法连接到 macOS 上的 Docker 守护进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44084846/

相关文章:

docker - Docker运行命令没有这样的文件或目录

docker - 如何将Docker容器日志记录到本地文件?

docker - 如何查看 Docker 引擎的内存分配?

macos - 命令行工具不工作 - OS X El Capitan、Sierra、High Sierra、Mojave

objective-c - 使用 mach_absolute_time() 减慢模拟速度。这是正确的方法吗?

macos - 如何在 UNIX/OSX 命令行上将 RTF 转换为 Markdown 类似于 pandoc

macos - Mac OS X 上不同端口上的 Firebird

mysql - macOS Sierra 上的 mariadb 10.1.21 mysql.server 启动错误

python - 强制 Django 使用 32 位 Python

macos - osx dns上的docker beta用于容器之间的链接不可用