-1

我在我的 Mac 上本地运行 ShinyProxy ( https://www.shinyproxy.io/ ),以及适用于 Mac 的 Docker Desktop。

ShinyProxy 需要通过 tcp 访问 Docker 守护进程,而不仅仅是通过 unix 套接字。

需要明确的是,Docker 桌面默认绑定到unix:///var/run/docker.sock. 我需要它绑定到http://127.0.0.1:2375.

我似乎找不到让 Docker 桌面绑定到 tcp 端口的方法。以前有没有人解决过这个问题?

4

1 回答 1

0

好的,据我所知,Mac 的 Docker Desktop 不会选择绑定到 TCP(我想是出于明显的安全原因)。没有办法改变这一点。所以我找到的解决方法如下:

socat TCP-LISTEN:2375,range=127.0.0.1/32,reuseaddr,fork UNIX-CLIENT:/var/run/docker.sock

它基本上将 Unix 套接字重新路由到 tcp 端口(仅绑定到 localhost)。这允许我通过 TCP 访问 Docker 守护进程。

于 2020-10-08T13:45:42.183 回答