Чтобы разрешить межконтейнерную связь, создайте общую мостовую сеть и поместите оба контейнера в одну и ту же сеть.Фаза сборки, предполагающая, что ничто не должно «общаться» друг с другом, не нуждается в переключателе --network.
docker network create jointops
docker build --network jointops -t srv1 /srv1
docker build --network jointops -t srv2 /srv2
docker run --network jointops -d -t srv1
docker run --network jointops -d -t srv2
Чтобы проверить, что оба компьютера находятся в одной сети, введите команду
docker network inspect jointops
Вы должны увидеть обе машины с распределением IP-адресов.
Хорошо ... так как они взаимодействуют?Мостовая сеть - jointops по умолчанию будет выполнять dns-разрешение
Так что если srv1 имеет что-то вроде
curl -c http://srv2/bla/bla/bla
Это будет решено правильно.
Относительно доступа к общим данным..
- Не запускать 2 приложения в 1 контейнере
Вместо
- создать том докера
- запустить 2 отдельныхконтейнеры
- каждый контейнер может подключаться к одному объему