容器的網路設定
輸入docker network ls
列出目前的docker network
Bridge Network
Bridge Network主要是透過Linux kernel一個叫做network namespace的功能來建立隔離式的網路。在Docker Daemon啟動時,會根據下列步驟建立一個docker0的網路介面
檢查docker0 bridge是否存在,如不存在則建立docker0 bridge
搜尋與當前路由不衝突的IP網段
選擇IP網段,並綁定至docker0
輸入ifconfig docker0
可以查看相關資訊
這個便是容器的預設網路,若在啟動容器時沒有指定,bridge network就是容器的網路模式。在bridge network上運行的容器可互相溝通,利用此模式建立的容器會有各自的IP address(如下圖)。
Host Network
若容器在建立時,設定--net=host
,代表直接使用主機上的網路,若容器上的API運行在80 port,那麼這個80 port指的就是主機上的port。唯一要注意的是,若主機上的port已被其他程序使用,可能會導致容器啟動後無法正常使用。
None Network
若容器在建立時,設定--net=none
也就是關閉容器的網路
Bridge Network與Host Network解釋
Last updated