доступ к базе данных postgress в контейнере docker, у которого нет общего порта с сервером

У меня есть база данных postgress, установленная в контейнере Docker под названием dbDocker. Этот контейнер не использует ни один из портов сервера, а порт контейнера для postgres 5342 виден только из контейнеров в той же виртуальной сети. Я хочу создать еще один контейнер докеров, чтобы позволить пользователям вне сети связываться с этой базой данных. Можно ли это сделать? Таким образом, этот новый контейнер будет отображаться как контейнер с базой данных.

Спасибо

2
задан 12 April 2019 в 19:18
1 ответ

Да, программное обеспечение, о котором вы спрашиваете, называется прокси.

У вас может быть контейнер, открывающий порт. Когда кто-то подключается, он подключается где-то еще и передает данные туда-сюда, оставаясь человеком посередине.

Фактически, когда вы открываете любой порт в докере (например, -p 3306: 3306 ), докер запускает внутренний прокси. Очень простой, без особой детализации доступа.

Примером более продвинутого прокси для вашего сценария является контейнерный haproxy, настроенный с режимом tcp (поскольку постпрогресс несовместим с режимом http ]).

Другой пример - ужасный прокси-сервер SOCKS.

Если я вас не понял, и вам нужно только просто открыть на 127.0.0.1, тогда посмотрите этот ответ .

2
ответ дан 3 December 2019 в 11:23

Теги

Похожие вопросы