部署Ubuntu Overlay网络
1. 基础环境准备
- 安装Docker:
sudo apt update && sudo apt install docker.io。 - (可选)若需跨主机通信,部署Consul等Key-Value存储:
docker run -d -p 8500:8500 --name consul progrium/consul -server -bootstrap
2. 创建Overlay网络
- 单节点/多节点通用:
docker network create --driver overlay --subnet 10.0.0.0/24 --gateway 10.0.0.1 my_overlay。--subnet:指定网络子网;--gateway:设置网关IP。
3. 配置跨主机(如需)
- 修改Docker守护进程配置(
/etc/docker/daemon.json):{ "cluster-store": "consul://:8500", "cluster-advertise": "<当前主机IP>:2376" } 重启Docker生效:
sudo systemctl restart docker。
4. 运行容器并连接网络
docker run -it --network my_overlay --name container1 nginx。
管理Overlay网络
1. 查看网络状态
- 列出所有Overlay网络:
docker network ls。 - 查看网络详情(IP分配、连接容器等):
docker network inspect my_overlay。
2. 容器管理
- 添加容器到网络:启动时指定
--network my_overlay。 - 从网络移除容器:先停止容器,再执行
docker network disconnect my_overlay container_name。
3. 高级管理(跨主机场景)
- 服务发现:通过Consul实现容器IP动态解析。
- 网络监控:使用
docker stats查看容器流量,或结合Prometheus+Grafana实现可视化。
注意事项
- 确保主机内核版本≥3.18以支持OverlayFS。
- 跨主机通信时,需确保各主机能访问Consul服务。
- 生产环境中建议使用Kubernetes等编排工具管理Overlay网络,支持自动扩缩容和故障恢复。
参考来源: