11、Docker的网络功能-配置容器网桥

1.配置网桥

Docker服务默认会创建一个名称为docker0的Linux网桥(其上有一个docker0内部接口),它在内核层连通了其他的物理或虚拟网卡,这就将所有容器和本地主机都放到同一个物理网络。用户使用Docker创建多个自定义网络时可能会出现多个容器网桥。

Docker默认指定了docker0接口的IP地址和子网掩码,让主机和容器之间可以通过网桥相互通信,它还给出了MTU(接口允许接收的最大传输单元),通常是1500 B,或宿主主机网络路由上支持的默认值。这些值都可以在服务启动的时候进行配置:

  • --bip=CIDR:IP地址加掩码格式,例如192.168.1.5/24;
  • --mtu=BYTES:覆盖默认的Docker mtu配置。也可以在配置文件中配置DOCKER_OPTS,然后重启服务。由于目前Docker网桥是Linux网桥,用户可以使用brctl show来查看网桥和端口连接信息:

每次创建一个新容器的时候,Docker从可用的地址段中选择一个空闲的IP地址分配给容器的eth0端口,并且使用本地主机上docker0接口的IP作为容器的默认网关:

2.自定义网桥

除了默认的docker0网桥,用户也可以指定其他网桥来连接各个容器。在启动Docker服务的时候,可使用-b BRIDGE或--bridge=BRIDGE来指定使用的网桥。如果服务已经运行,就需要先停止服务,并删除旧的网桥:

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容