Docker SDK для Golang не может подключиться к демону внутри оверлейной сети - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть рой докеров и контейнер внутри оверлейной сети в этом рое.Контейнер имеет приложение, написанное на golang, которое взаимодействует с Docker API путем создания контейнера и его запуска.Когда я запускаю мое приложение golang на хост-компьютере, все работает идеально, и он создает и запускает контейнер без проблем.Однако, когда я помещаю приложение в контейнер и запускаю его в своей оверлейной сети, оно больше не может получить доступ к API.

Я предполагаю, что это как-то связано с сетью, но идея моего проекта состоит в том, что есть несколько сервисов, каждый со своими сетями, которые могут создавать, запускать и удалять контейнеры, которые они считают нужными.НЕ запускать SDK в приложении за пределами оверлейных сетей, к сожалению, пока нет возможности.

Ошибка: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

1 Ответ

0 голосов
/ 25 ноября 2018

Ваше приложение пытается получить доступ к сокету Docker, но это не доступно по умолчанию в контейнере.

Вы можете смонтировать его как том с хоста: -v /var/run/docker.sock:/var/run/docker.sock

...