PyCharm无法连接到Docker,认为Docker守护程序未运行。

4

我的Mac上,PyCharm对Docker的接口突然停止工作了。当我尝试连接到Docker时,出现错误消息"无法连接到unix:///var/run/docker.sock处的Docker守护程序。 Docker守护程序正在运行吗?"。

Docker似乎正常工作。 docker info返回合理的结果。 Docker桌面正在运行。我可以通过Docker桌面启动容器并连接到它。 Kibana正常工作。唯一看起来奇怪的是/var/run/docker.sock不存在。

docker.sock不存在是个问题吗?

PyCharm针对Docker的配置如下:

enter image description here

自从一切正常以来,我就没有改变它。

网上建议的一个常见解决方案是更改/var/run/docker.sock文件的权限,但显然我不能这样做。有各种尝试的方法,但大多数需要sudo,而我在这台机器上没有管理员权限。有一个Stack Overflow问题描述了相同的情况,但那里的问题是Docker无法在没有sudo的情况下运行,这里不是这种情况。

特别奇怪的是,这几天前它还能工作,据我所知,机器上没有任何变化。相同的PyCharm设置,相同的Docker,相同的操作系统。我在

  • Python Community Edition 2021.2.3
  • Docker version 20.10.22, build 3a2c30b
  • Mac OSX Ventura 13.1

我已经尝试重新启动系统。

有什么想法是出了什么问题吗?


这是否与最近上个月发布的macOS Ventura 13.1的更新有关,可能导致了一些问题? - Richard Barber
在终端中,命令 docker ps 是否可用? - Philippe
docker ps 工作正常。据我所知,命令行命令可用。我不知道这是否意味着守护进程正在运行,或者像 PyCharm 这样的应用程序需要什么额外的东西。 - W.P. McNeill
尝试运行 docker run -it ubuntu bash,如果可以正常运行,则说明 Docker 守护进程正在运行。 - Philippe
docker run -it ubuntu bash 可以运行。它会下载一个 Ubuntu 镜像并在其中运行一个 shell。所以我猜 docker.sock 不是让 Docker 工作所必需的? - W.P. McNeill
显示剩余2条评论
2个回答

5
问题在于/var/run/docker.sock不存在。

更多细节请参见此Docker支持论坛帖子

解决方法是创建以下软链接:

ln -s ~/.docker/run/docker.sock /var/run/docker.sock

我在 PHPStorm 中遇到了相同的错误:“Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? (Details: [2] No such file or directory)”。使用符号链接即可解决此问题。非常感谢! - Hugo H
在互联网上搜寻了一番之后,这个答案真的救了我!我之前无法从IntelliJ连接到Docker。 - undefined

1
你可以通过Docker Desktop的设置来创建套接字文件。
设置 > 高级 > 允许使用默认的Docker套接字
该设置的描述如下:
创建/var/run/docker.sock,一些第三方客户端可能会使用它与Docker Desktop进行通信。了解更多信息请点击{{link1}}。

enter image description here


这应该是被接受的答案。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接