Docker - Контейнер не может быть подключен к конечным точкам сети - PullRequest
2 голосов
/ 19 февраля 2020

Я получаю следующую ошибку при запуске контроллера, подключая к сетевым интерфейсам test- net, sample- net, bridge0. Мое требование - иметь контейнер, который подключается к разным контейнерам, которые находятся в разных сетях.

    docker network create --driver bridge sample-net
    docker container run --name c3 -d --network test-net alpine:latest ping 127.0.0.1
    docker network create --driver bridge --subnet "10.1.0.0/16" test-net
    docker container run --name c4 -d --network test-net alpine:latest ping 127.0.0.1

    docker container run --name c1 -it --rm alpine:latest sh
    docker container run --name c5 -d --network sample-net --network test-net --network docker0 alpine:latest ping 127.0.0.1

Мое намерение - соединить «c5» со всеми другими контейнерами, подключившись к их интерфейсам. Тем не менее я сталкиваюсь с ошибкой при выполнении команды

docker container run --name c5 -d --network sample-net --network test-net --network docker0 alpine:latest ping 127.0.0.1

   docker: Error response from daemon: Container cannot be connected to network endpoints: sample-net, test-net, docker0.

1 Ответ

2 голосов
/ 19 февраля 2020

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

Со страницы https://success.docker.com/article/multiple-docker-networks

Docker только позволяет указать одну сеть с помощью команды docker run. Для подключения нескольких сетей «docker network connect» используется для подключения дополнительных сетей. Если контейнер должен быть подключен к нескольким сетям до его запуска, то можно подключить сети к созданному контейнеру, который еще не запущен.

И подключиться к сети по умолчанию - в следующем Например, alpine4 подключен к сети по умолчанию - https://docs.docker.com/network/network-tutorial-standalone/

docker run -dit --name alpine4 --network alpine-net alpine ash
docker network connect bridge alpine4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...