У меня есть база данных postgress, установленная в контейнере Docker под названием dbDocker. Этот контейнер не использует ни один из портов сервера, а порт контейнера для postgres 5342 виден только из контейнеров в той же виртуальной сети. Я хочу создать еще один контейнер докеров, чтобы позволить пользователям вне сети связываться с этой базой данных. Можно ли это сделать? Таким образом, этот новый контейнер будет отображаться как контейнер с базой данных.
Спасибо
Да, программное обеспечение, о котором вы спрашиваете, называется прокси.
У вас может быть контейнер, открывающий порт. Когда кто-то подключается, он подключается где-то еще и передает данные туда и обратно, оставаясь человеком посередине.
Фактически, когда вы открываете любой порт в докере (например, -p 3306:3306
), докер запускает внутренний прокси. Очень простой, без особой детализации доступа.
Примером более продвинутого прокси для вашего сценария является контейнерный haproxy, настроенный с помощью mode tcp
(поскольку постпрогресс несовместим с mode http
).
Другой пример - ужасный прокси-сервер SOCKS.
Если я вас неправильно понял, и вам нужно только просто выставить 127.0.0.1, а затем посмотреть этот ответ.