У меня есть сервер веб-сокетов, работающий локально на порте 3000. Этот сервер веб-сокетов НЕ докеризован. У меня также есть клиент websocket (myclient), который докернизирован. Мой клиент обменивается данными с другим докернизированным микросервисом (anothermicroservice) через именованную мостовую сеть (mybridgenet). Я бы хотел, чтобы myclient подключился к серверу websocket, который, как уже упоминалось, не докеризован и работает на 127.0.0.1:3000. Поскольку 127.0.0.1 для myclient является адресом контейнера, я не могу просто использовать его как таковой. У меня такой вопрос: как мне поддерживать связь между myclient и другим microservice через мостовую сеть, и в то же время подключать myclient к недокументированному серверу websocket на локальном хосте 127.0.0.1:3000?
Я пытался использовать опцию хоста network_mode, но она не может работать вместе с сетями
Мой файл docker-compose выглядит следующим образом:
version: '3.7'
services:
myclient:
container_name:
myclient
hostname:
myclient
build:
context:
.
dockerfile:
Dockerfile
depends_on:
- anothermicroservice
env_file:
- server.env # within this file I have the server uri 127.0.0.1:3000
networks:
- mybridgenet
anothermicroservice:
container_name:
anothermicroservice
hostname:
anothermicroservice
build:
context:
../anothermicroservice
dockerfile:
Dockerfile
networks:
- mybridgenet
networks:
mybridgenet:
name:
mybridgenet
driver:
bridge