У меня следующая ситуация. У меня есть служба, которая прослушивает 127.0.0.1 на порту 1234 (это нельзя изменить по соображениям безопасности). На той же машине запустите контейнер докеров. Мне нужно как-то подключиться к сервису на хосте изнутри контейнера. Поскольку служба принимает запросы только от 127.0.0.1, мне нужно каким-то образом связать порт из контейнера с портом хоста, но в обратном порядке, поэтому, когда я подключаюсь из контейнера к 127.0.0.1:1234, служба на хосте получит data.
Это возможно?
Спасибо.
связывание портов из контейнера докеров с хостом
Ответы (2)
В сети с мостом по умолчанию вы не сможете подключиться из контейнера к службе на узле, прослушивающем 127.0.0.1. Но вы можете использовать --net=host
при запуске контейнера, чтобы использовать сетевой стек узла непосредственно в контейнере. Он устраняет некоторую изоляцию, но затем позволяет вам напрямую обращаться к 127.0.0.1 как к контейнеру и обращаться к службам, работающим на хосте.
person
BMitch
schedule
16.08.2016
Вопрос
Как связать службу Dockerized с локальным хостом: порт?
Отвечать
Используйте -p
как это: docker run -p 127.0.0.1:1234:1234 <other options> <image> <command>
.
person
Auzias
schedule
16.08.2016