Docker 網絡管理 - 四種網絡模式
* host模式 (容器的網絡,寄居於宿主機。容器和宿主機網絡一樣。)
使用docker run時使用--net=host指定
docker使用的網絡實際上和宿主機一樣,在容器內看到的網卡ip是宿主機上的ip。相當於寄存於宿主機的網絡。它有一定的侷限性,如容器裏開啓了80端口,宿主機也開啓了80端口,會產生衝突。
例如:docker run -it --rm --net=host centos bash #退出容器,自動刪除容器。
* container模式 (多個容器,共用指定的一個容器的IP)
使用--net=container:container_id centos bash
多個容器使用指定容器的網絡,看到的所有容器ip是一樣的container:container_id第一個是固定格式,第二個是指定容器的ID,這樣啓動新容器後,新的IP和ID與指定的ID容器的IP、ID是一樣的。
* none模式
使用--net=none指定
這種模式下,不會配置任何網絡
* bridge模式
使用--net=bridge指定
默認模式,不用指定默認就是這種網絡模式。這種模式會爲每個容器分配一個獨立的Network Namespace。類似於vmware的nat網絡模式。同一個宿主機上的所有容器會在同一個網段下,相互之間是可以通信的。