解決 docker on windows下網絡不通


問題:公司有一台閉置的windows服務器,於是想利用起來,但是在啟動容器后始終無法通信成功。

研究:

1. 發現安裝包中包含virtualbox, 於是懷疑windows下的docker是在virtualbox中run了一個DOCKER虛擬機(額外思考一下,你自己構建的容器運行在virtualbox的docker里,跟linux下直接運行在docker里是否多了一層?性能是否會有損失?)

2. 啟動virtualbox, 果然有個新建並且在運行的虛擬機

3. 嘗試修改:在虛擬網卡中添加轉發

注意被我抹掉的主機IP部分,如果你只想要本機訪問填127.0.0.1可以,如果是有外網地址則需要綁定到外網的網卡上,不然外網訪問不能通。

4. 啟動容器:docker run -i -t -p -d 49223:22 mycentos /bin/bash

5. 在外面使用SSH訪問容器成功

總結分析下產生這個問題的原因:如上圖我們看到有個49226對22的映射,這個是在裝docker on windows時自動加上的。因此證實我上面的猜測,docker on windows其實是一個run在virtualbox上的虛擬機,通過ssh自動登錄進行操作。那么是否會有性能損失,而且virtualbox的穩定性能否支撐得住商業業務呢?當然類似, 我們可以在hype-v上建一個centos裝好docker,開放ssh到外面操作,但是只在服務器是windows下而且“領導”不願意或是不能轉成linux的情況下這么使用~~~

供只想在windows嘗試一下docker的同學玩玩


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM