Docker 容器网络管理
type
Post
status
Published
date
Feb 24, 2026
slug
summary
tags
运维
网络
docker
category
技术分享
icon
password
一、Docker 网络工作模式
支持的四种网络模式
- bridge:桥接模式(默认)
- host:主机模式
- container:容器共享模式
- none:无网络模式
查看现有网络:
二、四种网络模式详解
1. Bridge 模式
- 实质:NAT 模式
- SNAT:容器访问外部时进行源地址转换
- DNAT:通过
-p或-P映射容器端口到宿主机
- 注意:需避免端口冲突
2. Host 模式
- 容器与宿主机共享同一网络命名空间
- 示例:
- 潜在问题:容易出现端口冲突
3. Container 模式
- 新容器与已有容器共享网络命名空间
- 示例:
- 优势:减少通信时的网络消耗
4. None 模式
- 容器没有自己的网络命名空间
- 示例:
5、自定义模式
5.1 为什么需要自定义网络
- 默认 bridge 网络功能有限
- 需要容器间通过名称通信
- 实现网络隔离和安全性
- 支持更复杂的网络拓扑
- 注意:网段不要冲突
5.2 自定义网络类型
Bridge 自定义网络
连接容器到网络
断开网络连接
三、Flannel + Etcd 网络方案
1. Flannel 工作原理
- 解决的问题:跨物理机的容器间通信
- 实现方式:
- 改变容器 IP 分配方式
- 建立特殊线路连接容器网络

2. Flannel 网络部署
2.1 环境描述
- 192.168.140.10:docker/flannel/etcd
- 192.168.140.11:docker/flannel
2.2 安装配置 Etcd 数据库
配置内容:
启动服务:
2.3 安装配置 Flannel
2.3.1 安装 Flannel
配置内容:
2.3.2 在 Etcd 中写入 Flannel 网络信息
2.3.3 启动 Flannel
2.3.4 配置 Flannel 接管 Docker0
编辑 Docker 服务文件:
在
ExecStart 中添加 $DOCKER_NETWORK_OPTIONS:重启服务:
2.4 验证配置
- 检查
ifconfig docker0确认 IP 段已改为 Flannel 分配
- 查看 Flannel 生成的 Docker 配置:
四、测试容器通信
1. 修改防火墙策略
2. 测试跨主机容器通信
五、核心知识点总结
- Bridge 模式:适合单机容器网络,默认选择
- Host 模式:高性能但易冲突,适合网络性能要求高的场景
- Container 模式:容器间紧密通信,共享网络栈
- None 模式:完全自定义网络配置
- Flannel:解决跨主机容器通信,需配合 Etcd 进行配置管理
Loading...