docker 对于 windows 如何从容器访问 docker 守护进程
docker for windows how to access docker daemon from container
Im 运行 Docker Windows (hyper V) 桌面,我需要从通过 tcp 的容器。可以从主机连接到它,例如:
curl -v 127.0.0.1:2375/info
但无法使用我的主机 IP 地址从容器访问它。也许有人知道如何做到这一点,或者至少知道如何通过 ssh 连接到 docker 虚拟机,例如,可以通过执行以下命令在 mac 上通过 ssh 连接到它:
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
我已经想出如何使用 socat
工具来做到这一点,该工具需要 docket.socket 并代理 TCP 调用。
所以我启动了带有 socat
的容器,它挂载 docker.sock
因为它在 VM 内部可用并公开 2375 端口:
docker run -p 2375:2375 -v /var/run/docker.sock:/var/run/docker.sock codenvy/socat -d -d TCP-L:2375,fork UNIX:/var/run/docker.sock
现在,我可以通过 socat
容器访问 docker 守护进程 API。
Im 运行 Docker Windows (hyper V) 桌面,我需要从通过 tcp 的容器。可以从主机连接到它,例如:
curl -v 127.0.0.1:2375/info
但无法使用我的主机 IP 地址从容器访问它。也许有人知道如何做到这一点,或者至少知道如何通过 ssh 连接到 docker 虚拟机,例如,可以通过执行以下命令在 mac 上通过 ssh 连接到它:
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
我已经想出如何使用 socat
工具来做到这一点,该工具需要 docket.socket 并代理 TCP 调用。
所以我启动了带有 socat
的容器,它挂载 docker.sock
因为它在 VM 内部可用并公开 2375 端口:
docker run -p 2375:2375 -v /var/run/docker.sock:/var/run/docker.sock codenvy/socat -d -d TCP-L:2375,fork UNIX:/var/run/docker.sock
现在,我可以通过 socat
容器访问 docker 守护进程 API。