【问题标题】:Docker SDK for Golang can't connect to daemon inside overlay networkGolang 的 Docker SDK 无法连接到覆盖网络内的守护进程
【发布时间】:2018-11-25 19:01:43
【问题描述】:

我有一个 docker swarm,以及该 swarm 上覆盖网络内的一个容器。该容器有一个用 golang 编写的应用程序,它通过创建一个容器并启动它来与 Docker API 交互。当我在主机上运行我的 golang 应用程序时,一切都运行得很完美,它可以毫无问题地创建和运行容器。但是,当我将应用程序放入容器并在我的覆盖网络中运行它时,它不再可以访问 API。

我假设这与网络有关,但我的项目的想法是有多个服务,每个服务都有自己的网络,可以创建、启动和删除他们认为合适的容器。遗憾的是,目前不可以在覆盖网络之外的应用中运行 SDK。

错误:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

【问题讨论】:

    标签: docker go docker-compose docker-swarm docker-api


    【解决方案1】:

    您的应用正在尝试访问 Docker 套接字,但在容器中默认情况下无法访问。

    您可以从主机将其挂载为卷: -v /var/run/docker.sock:/var/run/docker.sock

    【讨论】:

      猜你喜欢
      • 2021-08-19
      • 1970-01-01
      • 2014-03-19
      • 1970-01-01
      • 2017-06-14
      • 1970-01-01
      • 2016-04-04
      • 2020-06-03
      • 2018-08-10
      相关资源
      最近更新 更多