Docker Golang 的 SDK 无法连接到覆盖网络内的守护进程
Docker SDK for Golang can't connect to daemon inside overlay network
我有一个 docker 群,并且在该群上的覆盖网络中有一个容器。该容器有一个用 golang 编写的应用程序,它通过创建一个容器并启动它来与 Docker API 交互。当我在主机上 运行 我的 golang 应用程序时,一切 运行 都很完美,它创建并 运行 容器没有问题。但是,当我将应用程序放入容器中并 运行 它在我的覆盖网络中时,它不再可以到达 API。
我假设这与网络有关,但我的项目的想法是有多个服务,每个服务都有自己的网络,可以创建、启动和删除他们认为合适的容器。不幸的是,目前不能 运行在覆盖网络之外的应用程序中使用 SDK。
错误:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
您的应用正在尝试访问 Docker 套接字,但默认情况下在容器中无法访问。
您可以从主机将其作为卷安装:
-v /var/run/docker.sock:/var/run/docker.sock
我有一个 docker 群,并且在该群上的覆盖网络中有一个容器。该容器有一个用 golang 编写的应用程序,它通过创建一个容器并启动它来与 Docker API 交互。当我在主机上 运行 我的 golang 应用程序时,一切 运行 都很完美,它创建并 运行 容器没有问题。但是,当我将应用程序放入容器中并 运行 它在我的覆盖网络中时,它不再可以到达 API。
我假设这与网络有关,但我的项目的想法是有多个服务,每个服务都有自己的网络,可以创建、启动和删除他们认为合适的容器。不幸的是,目前不能 运行在覆盖网络之外的应用程序中使用 SDK。
错误:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
您的应用正在尝试访问 Docker 套接字,但默认情况下在容器中无法访问。
您可以从主机将其作为卷安装:
-v /var/run/docker.sock:/var/run/docker.sock