Docker容器埠對映本地自身無法訪問

2022-02-21 02:58:17 字數 606 閱讀 8040

因專案環境需求需要設定兩塊網絡卡進行訪問192走內網(自身連線硬體及基礎服務) 172走外網(區域網辦公人員連線) 具體設定看上乙個隨筆現在伺服器的容器只要通過埠對映的程式都無法正常連線,奇怪的是其他區域網比如另乙個windows上的客戶端就可以正常連線應用,同乙個伺服器下的程式連線就會報socket套接字等報錯(不會報錯無法連線基礎服務),當時是乙個jar連線mongodb,報錯這個一般情況會會議是不是容器啟動就有問題,當時這個容器沒有設定雙網絡卡之前一直好好的。根據上述描述確認一下幾點

容器 - 使用宿主機網路的容器連線正常

容器 - 其他伺服器訪問對映埠的服務正常

網路 - 已經設定網路** echo 'net.ipv4.ip_forward = 1' >> /usr/lib/sysctl.d/50-default.conf

網路 - 防火牆 selinux 未開啟

萬物皆重啟 昨天設定網路一大波 沒有重啟網路導致一些策略沒有生效 崩潰:docker服務都重啟了就是當時沒有順手重啟一下網路服務

參考部落格

docker容器埠對映無法訪問的問題排查 :

docker 埠對映外部無法訪問問題 :

docker容器內部無法訪問宿主機在的內網(區域網):

docker 追加docker容器埠對映的方法

docker run可以指定埠對映,但是容器一旦生成,就沒有乙個命令可以直接修改。通常間接的辦法是,儲存映象,再建立乙個新的容器,在建立時指定新的埠對映。但這樣太麻煩了。現在有新方案來解決掉 操作步驟 1 檢視容器 docker ps a2 停止容器 docker stop f5033 停止dock...

Docker更改容器埠對映

一般情況下是不可以改變容器的埠對映的,只有通過run命令指定。如果想要不改變容器內容和配置的情況下更改埠對映只有先停止,然後將容器打包成映象,然後在執行新的映象的時候指定新的埠對映。先停止容器 docker stop containera 將容器commit成為乙個映象 docker commit ...

Docker容器修改埠對映

對於已經建立的docker容器,需要新增容器對主機的埠對映,主要分為三種 1.使用docker ps a命令找到要修改容器的container id 2.執行以下命令,進入該容器目錄 docker inspect container id grep id cd var lib docker cont...