📜  Docker-网络(1)

📅  最后修改于: 2023-12-03 15:00:30.662000             🧑  作者: Mango

Docker网络介绍

在Docker中,网络是指Docker容器之间和容器与主机之间的网络连接。

Docker网络类型

Docker有四种网络类型,分别是:

  1. bridge(单主机网络)
  2. host(共享主机网络)
  3. overlay(多主机网络)
  4. macvlan(网络隔离)
bridge(单主机网络)

bridge是Docker默认的网络类型,也叫“桥接网络”。桥接网络会在宿主机上创建一个虚拟网桥,Docker容器连接到这个虚拟网桥上,所有连接到同一个虚拟网桥的容器,都可以相互通信。

host(共享主机网络)

在host网络模式下,Docker容器将直接使用主机的网络配置,和主机网络共享同一个IP地址和端口。因此,容器的网络性能非常好,但是网络隔离性非常差,容器之间不能互相通信。

overlay(多主机网络)

overlay网络类型主要用于跨主机的网络通信。Docker的overlay网络可以在多台主机上创建虚拟网络,这些虚拟网络可以相互通信,这种方式非常适合分布式应用场景。

macvlan(网络隔离)

macvlan网络是容器独立分配一个MAC地址和IP地址,使容器可以在主机网络中像一个物理计算机那样工作。这种网络类型适用于需要直接暴露到外部网络的场景。

Docker网络配置
创建网络
docker network create [options] NETWORK
查看网络列表
docker network ls
查看网络详细信息
docker network inspect NETWORK
连接容器到网络
docker network connect NETWORK CONTAINER
从网络中移除容器
docker network disconnect NETWORK CONTAINER
Docker网络连接器

Docker提供了几种网络连接器,可以用来实现容器之间的通信、容器与主机之间的通信等。

bridge网络连接器
docker run --name CONTAINER_NAME --network=NETWORK_NAME IMAGE_NAME
host网络连接器
docker run --name CONTAINER_NAME --network=host IMAGE_NAME
overlay网络连接器
docker service create --name SERVICE_NAME --network=OVERLAY_NETWORK_NAME IMAGE_NAME
总结

Docker网络类型及其配置非常灵活,通过选择合适的网络类型和连接器,可以为不同的应用场景提供高效的网络支持。