docker network connect

說明將容器連接到網路
用法docker network connect [選項] 網路名稱 容器名稱

說明

將容器連接到網路。您可以使用名稱或 ID 來連接容器。連接後,容器可以與同一網路中的其他容器進行通訊。

選項

選項預設值說明
--alias新增網路範圍的容器別名
--driver-opt網路的驅動程式選項
--ipIPv4 位址(例如,`172.30.100.104`)
--ip6IPv6 位址(例如,`2001:db8::33`)
--link新增連結至另一個容器
--link-local-ip新增容器的連結本地位址

範例

將正在執行的容器連接到網路

$ docker network connect multi-host-network container1

在容器啟動時將其連接到網路

您也可以使用 `docker run --network=<網路名稱>` 選項來啟動容器並立即將其連接到網路。

$ docker run -itd --network=multi-host-network busybox

指定容器在給定網路上將使用的 IP 位址 (--ip)

您可以指定要分配給容器介面的 IP 位址。

$ docker network connect --ip 10.10.36.122 multi-host-network container2

您可以使用 `--link` 選項將另一個容器與慣用的別名連結。

$ docker network connect --link container1:c1 multi-host-network container2

建立容器的網路別名 (--alias)

`--alias` 選項可用於在所連接的網路中使用另一個名稱來解析容器。

$ docker network connect --alias db --alias mysql multi-host-network container2

設定容器介面的系統控制參數 (--driver-opt)

以 `net.ipv4.` 和 `net.ipv6.` 開頭的 `sysctl` 設定可以使用 `--driver-opt` 標籤 `com.docker.network.endpoint.sysctls` 針對每個介面進行設定。介面名稱必須替換為 `IFNAME`。

要為介面設定多個 `sysctl`,請將 `driver-opt` 欄位的整個值用引號括起來,並記住在必要時逸出 shell 的引號。例如,如果 `my-net` 的介面名稱為 `eth3`,則以下範例會設定 `net.ipv4.conf.eth3.log_martians=1` 和 `net.ipv4.conf.eth3.forwarding=0`。

$ docker network connect --driver-opt=\"com.docker.network.endpoint.sysctls=net.ipv4.conf.IFNAME.log_martians=1,net.ipv4.conf.IFNAME.forwarding=0\" multi-host-network container2

注意事項

網路驅動程式可能會限制可以修改的 sysctl 設定,並且為了保護網路的運作,未來可能會新增限制。

停止、暫停或重新啟動容器的網路影響

您可以暫停、重新啟動和停止連接到網路的容器。容器在運行時會連接到其配置的網路。

如果已指定,則在重新啟動已停止的容器時,會重新套用容器的 IP 位址。如果 IP 位址不再可用,則容器將無法啟動。確保 IP 位址可用的方法之一是在建立網路時指定 --ip-range,並從該範圍之外選擇靜態 IP 位址。這可確保在容器不在網路上時,IP 位址不會提供給其他容器。

$ docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 multi-host-network
$ docker network connect --ip 172.20.128.2 multi-host-network container2

要驗證容器是否已連接,請使用 docker network inspect 命令。使用 docker network disconnect 將容器從網路中移除。

在網路上連接後,容器只能使用其他容器的 IP 位址或名稱進行通訊。對於支援多主機連線功能的 `overlay` 網路或自訂外掛程式,連接到同一個多主機網路但從不同引擎啟動的容器也可以透過這種方式進行通訊。

您可以將容器連接到一個或多個網路。這些網路不需要是同一類型。例如,您可以連接單一容器橋接網路和覆蓋網路。