如何从远程主机访问在docker上运行的进程

zqdjd7g9  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(507)

如何从远程主机b访问或连接到主机a上docker上运行的进程
考虑一个ip为192.168.0.3的主机a,它在端口3999的docker上运行应用程序。如果我想从同一子网中ip为192.168.0.4的远程计算机访问该应用程序。
准确地说,我在服务器上运行kafka producer,并尝试使用kafka console consumer接收。

ux6nzvsh

ux6nzvsh1#

使用 --net=hostrun 您的容器,它将使用主机的网络堆栈,然后您可以连接到在容器中运行的应用程序,就像它直接在主机上运行一样。
端口Map,使用选项 -p 将容器内的端口Map到主机的端口。例如。 docker run -d -p <container port>:<host port> <image> ,然后您可以连接到 <host>:<host port> 在容器内连接应用程序
docker的内置多主机网络。在早期版本中,网络驱动程序与docker的核心是隔离的,您必须使用第三方工具(如flannel或weave)进行多主机连接,但从1.9版开始,它已合并到docker中。你可以按照它的指南来设置它。
希望这有帮助:-)

bwitn5fc

bwitn5fc2#

首先需要将docker容器的端口绑定到主机a:
docker run-d-p 3999:3999Kafka制作人
然后您需要使用ip:port从主机b访问主机a

192.168.0.3:3999

相关问题