Docker驱动原理差异性怎么理解

发布时间:2021-12-13 11:30:54 作者:iii
来源:亿速云 阅读:191

这篇文章主要介绍“Docker驱动原理差异性怎么理解”,在日常操作中,相信很多人在Docker驱动原理差异性怎么理解问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker驱动原理差异性怎么理解”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

容器网络概念

  1. 首先了解下linux的网络构成概念

  1. 运行Docker容器默认使用的是bridge网络,Docker还包含其他网络模型,容器网络模型主要包含了3个概念

  1. 这里我们先介绍下Docker常用的网络模式:

网络模式简介
Host容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。
Bridge此模式会为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,通过docker0网桥以及Iptables nat表配置与宿主机通信。
none该模式关闭了容器的网络功能,不分配子网跟ip
Container创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围。
overlay容器在两个跨主机进行通信的时候,是使用overlay network这个网络模式进行通信
luxurong@hb13520 ~ % docker network ls
NETWORK ID          NAME                  DRIVER              SCOPE
5a9f0bc5a93a        bridge                bridge              local5239b7670d4f        composetest_default   bridge              local0487feea0278        host                  host                localddfec4c499d9        none                  null                local62e4405853d2        testcompose_default   bridge              local
  1. 如何创建并且使用自定义网络驱动?

#创建网络ocker network create --driver bridge my-net#my-net网络docker run --network=my-net ......

网络的创建是非常的简单,至此大家了解了几种常见的网络模型。

详解Docker驱动原理差异性

主机ip:

  1. Host网络

该模式与宿主机在同一个网络中,但没有独立IP地址。一个Network Namespace提供了一份独立的网络环境,包括网卡、路由、Iptable规则等都与其他的Network Namespace隔离。一个Docker容器一般会分配一个独立的Network Namespace。但如果启动容器的时候使用host模式,那么这个容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。

Docker驱动原理差异性怎么理解

  1. Container网络

在理解了host模式后,这个模式也就好理解了。这个模式指定新创建的容器和已经存在的一个容器共享一个Network Namespace,而不是和宿主机共享。新创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围等。同样,两个容器除了网络方面,其他的如文件系统、进程列表等还是隔离的。两个容器的进程可以通过lo网卡设备通信。kubernetes的pod就是使用的这一模式。

Docker驱动原理差异性怎么理解

5.overlay 网络

使用host也可以实现跨主机进行通信,直接使用这个物理的ip地址就可以进行通信。overlay它会虚拟出一个网络比如10.0.9.3这个ip地址,在这个overlay网络模式里面,有一个类似于服务网关的地址,然后把这个包转发到物理服务器这个地址,最终通过路由和交换,到达另一个服务器的ip地址。 Docker里实现采用会有一个服务发现consul,,会定义一个ip地址池,比如10.0.9.0/24之类的,上面会有容器,容器的ip地址会从上面去获取,获取完了后,会通过eth2进行通信,贼这实现跨主机的东西。

到此,关于“Docker驱动原理差异性怎么理解”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. 理解 Node.js 事件驱动机制的原理
  2. Docker Hub的运行原理解析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

docker

上一篇:轻松架设搭建属于自己或团队的私有云服务ownCloud该怎么理解

下一篇:怎么利用服务器搭建私有云存储服务

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》