解决 macOS 安装 Docker 后无法远程连接的问题
在 macOS 上安装 Docker 之后,默认情况下可能无法通过远程连接(如 docker
命令)来管理容器。这是因为 macOS 的 Docker 实例运行在一个沙盒环境中,并未暴露 Docker 守护进程的 socket 文件 /var/run/docker.sock
,导致远程连接工具无法与 Docker 守护进程通信。
如何解决
要实现远程连接,我们可以使用 socat
工具创建一个代理服务,将 TCP 端口转发到 Docker 的 socket 文件。以下是具体步骤:
-
拉取 socat 镜像
使用以下命令拉取 Alpine 版本的 socat 镜像:docker pull alpine/socat
-
运行 socat 容器并创建代理服务
执行以下命令启动一个 socat 容器,监听 TCP 端口 2375,并将连接转发到 Docker 的 socket 文件:docker run -d --name</