簡體   English   中英

如果docker容器ip和外部網絡ip相同,那么如果執行telnet,則哪個響應? 任何想法

[英]If docker container ip and external network ip is same, then which one will get respond if will do telnet? any idea

如果docker容器IP和外部網絡IP是相同的,那么如果它執行telnet,將響應哪一個?

我知道以下配置是最差的配置,但我想知道其行為。

給你一個例子

我的應用程序在localhost中運行,該主機正在與docker容器內的數據庫進行通信。 我們提供的自定義IP-(IP:10.0.0.1,PORT:5432)

另一個在容器外部運行的數據庫,可以說容器(IP和端口)和主機(IP和端口)是相同的。 主機IP:10.0.0.1,主機端口:5432

哪一個將通過應用程序主機/容器數據庫或兩者連接?

要么

telnet 10.0.0.1 5432是否可以? 哪一個會回應,為什么?

圖解說明

我認為這是不可能的,即使容器和主機具有相同的IP(以某種方式),您也無法將容器端口5432映射到主機端口5432,因為已經有一個應用程序(主機dB)在該端口上運行。

考慮一個場景,其中您也將容器的主機網絡也可以使用--network host 這樣,您的容器IP將與主機IP相同。 容器將使用主機的5432端口運行dB。 現在,如果您嘗試使用同一端口在主機上啟動dB,您將得到一個錯誤,表明該端口已被使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM