Docker 网络

Posted 林炜玮_51CTO

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 网络相关的知识,希望对你有一定的参考价值。

docker网卡和高可用

Docker服务安装完毕后,默认为每个宿主机生成docker0网卡地址为172.17.0.1/16,作用通过它NAT访问宿主机的服务包括外网

Docker

docker结合负载实现网络高可用架构

实现思路:
1、docker容器1部署keepalived、haproxy、nginx
2、docker容器2部署keepalived、haproxy、nginx
3、结合应用间负载进行部署配置

Docker

docker网络互联

网络互联情景

pod:
容器到容器(k8s中同一个pod)
容器到容器(k8s中非同一个pod)
同一服务器
非同一服务器
容器到内网
内网到容器

网络三种类型

docker网络类型分为三种类型,​bridge、host、none​,docker network --help命令进行网络部分的帮助

Docker

bridge:

默认模式,无需指定模式
使用自定义IP,也可以DHCP

Docker


host
启动容器时命令指定网络模式为host,-net=host
不获取IP地址,直接使用物理机IP,并监听物理机IP监听端口,不会创建虚拟网卡
网络性能利用最高,适合mysql/kafka/redis/大数据容器业务,缺点是容器之间端口不能相同,不支持端口映射,适合固定的业务

none
没有网络包括网卡、IP、路由,命令指定-net=none

container
与已经存在的容器共享一个网络,命令指定-net=container
两个容器间通过lo网卡及容器ID通信

容器之间互联

通过名称、自定义名称(别名)互联,因为容器启动内部ip地址是DHCP分配的,名称/别名相对固定

容器跨主机在具备通信的情况下,宿主机做一个网络路由,复杂的环境使用google开源的k8s

思路
修改宿主机默认网段-更改服务器网段-重启网卡-添加静态路由-检查iptables规则


以上是关于Docker 网络的主要内容,如果未能解决你的问题,请参考以下文章

docker容器网络

docker的网络模式:none

理解Docker :Docker 网络

理解Docker:Docker 网络

Docker下网络的认识与实验

Docker关于Docker网络隔离与通信详解