摘要:本文主要向大家介绍了Linux运维知识之Docker的网络类型及驱动器,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。
本文主要向大家介绍了Linux运维知识之Docker的网络类型及驱动器,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。
计算机如果不能够联网,其价值就要大打折扣。类似的,一个Docker容器也需要通过网络访问其他资源,或者被其他资源访问。这就涉及到Docker容器实例的网络,也与Docker宿主机的网络息息相关。
总的来说,Docker的网络是一个通过网络驱动器(driver)实现的Docker子系统。不同的网络驱动器,能够创建具有不同网络特性的Docker容器实例。
目前(Docker v18.03),Docker内置提供如下的网络驱动器:
Docker容器实例默认即使用该网络驱动器,-d=bridge
明确使用该网络驱动器。
该网络驱动器适用于独立的容器实例之间通信,但是这些容器实例必须位于同一个宿主机。在bridge网络中,各个独立的容器实例都是连接到一个bridge,并通过bridge通信。
在Docker环境中,默认即已经创建了一个名为bridge的网络。后续启动的容器实例,如果没有指明网络驱动器,则默认加入到该网络。也可以专门创建一个定制的bridge网络,创建的bridge网络会覆盖默认的bridge网络。定制的bridge网络,最大的好处是默认即支持服务的自动发现。
在bridge网络中,每次启动一个容器实例,都会按照顺序获取网络IP。所以重启容器实例后,可能会发现容器的IP变化了。
bridge网络默认不支持IPv6。
-d=host
明确使用该网络驱动器。
该网络驱动器适用于Linux宿主机上的独立的容器实例。容器实例与容器宿主机之间没有网络隔离,容器实例直接使用宿主机的网络。
host网络默认不支持IPv6。
-d=overlay
明确使用该网络驱动器。
该网络驱动器适用于Docker宿主机集群中的各个独立的容器实例之间通信。为集群中的Docker容器实例提供跨多个Docker引擎的网络连接。
-d=macvlan
明确使用该网络驱动器。
该网络驱动器适用于与需要有MAC地址的容器实例。
在某些历史遗留应用中,只能通过MAC通信,与之通信的容器实例也必须拥有MAC地址。这时容器实例就如同真实的物理设备一样。
-d=none
禁用容器实例中的网络功能。通常,这表明要使用其他的第三方网络驱动器。
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注系统运维Linux频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号