Docker-контейнер не может подключиться к другому контейнеру в другой сети - PullRequest
0 голосов
/ 01 марта 2019

У меня на сервере запущено 2 разных контейнера (app и web_server).Они находятся в одной и той же сети, потому что я поместил их в одну и ту же сеть, а драйвер этой сети - bridge.

networks:
  app-network:
    driver: bridge

Теперь у меня есть 3-й контейнер, который должен подключить один из 2-х упомянутых мной контейнеров.Я пытаюсь подключиться от 3-го контейнера к 1-му контейнеру следующим образом: app: 9000, но он говорит, что хост не найден.Я думаю, это потому, что они находятся в разных сетях.Что я должен сделать, чтобы это работало?

1 Ответ

0 голосов
/ 01 марта 2019

Вам нужно, чтобы оба контейнера присоединились к одной сети.либо создав новую сеть и сделав затем присоединяясь к ней, либо один из них присоединится к сети другого контейнера.

docker-compose.yml, где у вас есть container1 и container2:

  • определяет внешнюю сеть, которая принадлежит container3
  • . Добавьте один из этих двух контейнеров в две внешние сети, как показано в первом фрагменте

docker-compose.ymlгде у вас container3 будет обычный docker-compose с мостовой сетью.

вам необходимо сначала запустить третий контейнер, чтобы сначала была создана третья сеть, илиВы можете создать третью сеть вручную с помощью Docker Cli и изменить определение на внешнее

#docker-compose.yml

container1:
  networks:
    - first_network
    - second_network

networks:
  first_network:
    driver: bridge
  second_network:
    external: true
#docker-compose.yml
container3:
  networks:
    - second_network

networks:
  second_network:
    driver: bridge
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...