docker 提供了三種聯(lián)網(wǎng)模式:橋接模式:為容器創(chuàng)建獨立的虛擬網(wǎng)絡(luò)接口,實現(xiàn)外部網(wǎng)絡(luò)連接。主機模式:將容器網(wǎng)絡(luò)接口與主機綁定,共享主機網(wǎng)絡(luò)資源。容器模式:連接到其他容器的網(wǎng)絡(luò)命名空間,共享其網(wǎng)絡(luò)接口和 IP 地址。
Docker 如何聯(lián)網(wǎng)
Docker 是一個容器虛擬化平臺,它可以將應(yīng)用程序與基礎(chǔ)設(shè)施解耦。為了在 Docker 容器中運行應(yīng)用程序,我們需要確保它們能夠訪問網(wǎng)絡(luò)。
容器聯(lián)網(wǎng)模式
Docker 提供了三種容器聯(lián)網(wǎng)模式:
- 橋接模式:為容器創(chuàng)建獨立的虛擬網(wǎng)絡(luò)接口,能夠與主機和外部網(wǎng)絡(luò)進行通信。
- 主機模式:將容器的網(wǎng)絡(luò)接口直接與主機的網(wǎng)絡(luò)接口綁定,共享主機的 IP 地址和端口范圍。
- 容器模式:將容器連接到另一個容器的網(wǎng)絡(luò)命名空間,共享該容器的網(wǎng)絡(luò)接口和 IP 地址。
橋接模式
橋接模式是最常用的模式。它為每個容器分配一個虛擬網(wǎng)絡(luò)接口,并通過一個虛擬網(wǎng)橋連接到主機的物理網(wǎng)絡(luò)接口。使用橋接模式,容器可以訪問外部網(wǎng)絡(luò),但與主機沒有直接連接。
配置橋接模式
要配置橋接模式,可以在創(chuàng)建容器時指定 –net 標志,如下所示:
docker run --name my-container --net bridge -it ubuntu:latest
主機模式
主機模式通常用于需要直接訪問主機網(wǎng)絡(luò)棧的應(yīng)用程序。使用主機模式,容器的網(wǎng)絡(luò)接口直接與主機的網(wǎng)絡(luò)接口綁定。這意味著容器將共享主機的 IP 地址和端口范圍。
配置主機模式
要配置主機模式,可以在創(chuàng)建容器時指定 –net=host 標志,如下所示:
docker run --name my-container --net=host -it ubuntu:latest
容器模式
容器模式允許容器連接到另一個容器的網(wǎng)絡(luò)命名空間。使用容器模式,容器可以共享其他容器的網(wǎng)絡(luò)接口和 IP 地址。
配置容器模式
要配置容器模式,可以在創(chuàng)建容器時指定 –net=container:
docker run --name my-container --net=container:other-container -it ubuntu:latest