docker 容器訪問宿主機的解決方式

2021-10-19 23:25:18 字數 546 閱讀 7393

基於本地docker的自研及使用需要,希望docker容器的服務能連線到宿主機提供的服務。

網路上查閱了大量的資料,基本的解決辦法是通過手動查閱ip的方式進行,

但docker宿主機的ip是會動態改變的,並不能保證永久不變。因此此舉是行不通。

使用 --net=host 的網路模式。

但實踐,發現win環境下,宿主機上並沒有暴露容器的埠。

網路上的一些觀點是:該用法不適用於windows和mac atm。–net="host"僅適用於linux(有待求證)。

當前此示例在win10 環境測試可用,其他作業系統環境有待求證

win/linux : docker.for.win.localhost 、 host.docker.internal

mac : docker.for.mac.localhost

示例:

ping docker.for.win.localhost

docker宿主機訪問docker容器服務失敗

原因 因為docker的虛擬ip網段是172.17.與區域網的ip網段172.17衝突了,所以有兩種方式 解決方法 一 修改docker網絡卡資訊,將網段改為與區域網不同的即可 linux修改方法 第一步 刪除原有配置 sudo service docker stop sudo ip link se...

Docker容器訪問宿主機網路

業務請求量小的時候,我們會把一些工程部署到同一臺機器上。這些工程之間也會相互訪問。如果是http的介面,我們最方便的是使用localhost帶地本機的ip。不過結合docker容器後出現了問題。docker容器中localhost表示容器的ip位址。不是宿主機ip。其實docker容器執行的時候有h...

docker容器內訪問宿主機的資源

我們經常會在容器內訪問宿主機的資源 比如 nginx容器反向 其他容器或者宿主機的應用 如果nginx在容器內,方向 宿主機的應用,直接使用127.0.0.1 或者localhost是有問題的,因為宿主機的網路和容器網路不通 解決辦法 在linux下使用docker0網路,把127.0.0.1改為d...