2.8 Docker网络深度解析:Bridge、Host、None、Overlay网络模式实战对比
引言
Docker网络是容器通信的基础。理解不同的网络模式及其应用场景,是构建容器化应用的关键。本文将深入解析Bridge、Host、None、Overlay四种网络模式,帮助你选择适合的网络方案。
一、Docker网络概述
1.1 网络模式类型
- Bridge:默认网络模式
- Host:直接使用宿主机网络
- None:无网络
- Overlay:跨主机网络
1.2 查看网络
# 查看所有网络dockernetworkls# 查看网络详情dockernetwork inspect bridge# 查看容器网络dockerinspect<container_id>|grep-A20"Networks"二、Bridge网络模式
2.1 Bridge模式原理
Bridge模式是Docker的默认网络模式,容器通过虚拟网桥连接到宿主机网络。
┌─────────────┐ │ Container1 │ │ 172.17.0.2 │ └──────┬──────┘ │ ┌──────▼──────┐ │ docker0 │ (虚拟网桥) │ 172.17.0.1 │ └──────┬──────┘ │ ┌──────▼──────┐ │ Host NIC │ │ 192.168.1.1│ └─────────────┘2.2 使用Bridge网络
# 创建容器(默认使用bridge)dockerrun -d --name web nginx:latest# 查看网络配置dockerinspect web|grep-A10"NetworkSettings"# 创建自定义bridge网络dockernetwork create mybridge# 使用自定义网络dockerrun -d --name web --network mybridge nginx:latest2.3 Bridge网络配置
# 创建带配置的bridge网络dockernetwork create\--driver bridge\--subnet=172.20.0.0/16\--gateway=172.20.0.1\mybridge# 指定IP地址dockerrun -d --name web\--network mybridge <