围绕Docker网络管理和使用,出现一些方便用户操作的工具和项目。
pipework
pipework的shell脚本封装了一些操作,可以简化在比较复杂的场景对容器连接的操作命令。
比如,创建两个容器c1和c2
docker run --name c1 -it ubuntu
docker run --name c2 -it ubuntu
使用pipework为c1和c2添加新的网卡,并将其连接到新创建的br1网桥
pipework br1 c1 192.168.1.1/24
pipework br1 c2 192.168.1.2/24
pipework还支持指定容器内的网卡名称、MAC地址、网络掩码和网关等配置,甚至通过macvlan连接到容器到本地物理网卡,实现跨主机通信。
playground
playground是Docker容器网络拓扑管理的Python库,包括路由、NAT防火墙,HTTP/SMTP等服务器实现。
libswarm
libswarm项目目标是打造管理Docker网络的最小化工具集。