Мне нужно 2 контейнера для работы с одним и тем же адресом порта (27017), поэтому я попытался запустить его в отдельных сетях.
Итак, я настроил 3 контейнера внутри пользовательской сети (NetA) с настраиваемым IP-адресом (IpA).
Теперь я пытаюсь запустить другой контейнер в другой сети (NetB) с другим настраиваемым IP-адресом (IpB).
Но я получаю ошибку:
Не удалось выполнить привязку для 0.0.0.0:27017: порт уже выделен
И когда я смотрю на свои контейнеры, чтобы проверить, все ли порты настроены на ip
0.0.0.0: 3000-> 3000 / tcp service-aquarium-srvt
0.0.0.0: 3001-> 3001 / tcp service-aquarium-srve
0.0.0.0: 27017-> 27017 / tcp service-aquarium-database
Вот мой docker-compose из двух контейнеров, которые должны быть запущены в отдельных сетях.
Docker-Compose A:
version: '3'
services:
mongo:
image: mongo:4.0.8
container_name: service-aquarium-database
ports:
- '27017:27017'
volumes:
- /docker/db/service-aquarium:/docker/db/service-aquarium
networks:
network: #name of the network
ipv4_address: 172.28.0.4
networks:
network:
ipam:
driver: default
config:
- subnet: 172.28.0.0/16
Docker-Compose B:
версия: '3'
services:
mongo:
image: mongo:4.0.8
container_name: service-user-database
ports:
- '27017:27017'
volumes:
- /docker/db/service-user:/docker/db/service-user
networks:
network: #name of the network
ipv4_address: 172.29.0.3
networks:
network:
ipam:
driver: default
config:
- subnet: 172.29.0.0/16
Все находятся на IP-адресе 0.0.0.0, даже если я указал разные сети с указанными IP-адресами.
Я не понимаю, что я делаю неправильно, любая помощь будет оценена.
Спасибо