博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker技术入门之---网络配置(8)
阅读量:5204 次
发布时间:2019-06-13

本文共 1438 字,大约阅读时间需要 4 分钟。

  Docker启动时会在主机上自动创建一个docker0虚拟网桥,实际上是一个Linux网桥,可以理解为一个软件交换机,他会在挂载其上的接口之间进行转发:如图所示

  

  创建一个Docker容器的时候,同时会创建一对veth pair接口。这对接口一端在容器内,即eth0;另一端在本地并被挂载到docker0网桥,名称以veth开头,通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。如此一来,Docker就创建了在主机和所有容器之间一个虚拟共享网络。

  下面是跟Docker网络相关的命令参数。其中有些命令选项只有在Docker服务启动的时候才能配置,而且不能马上生效:

  • -b BRIDGE or--bridge=BRIDGE——指定容器挂载的网桥;
  • --bip=CIDR——定制docker0的掩码;
  • -H SOCKET...or--host=SOCKET...——Docker服务端接收命令的通道;
  • --icc=true|false——是否支持容器之间进行通信;
  • --ip-forward=true|false——启用net.ipv4.ip_forward,即打开转发功能;
  • --iptables=true|false——禁止Docker添加iptables规则;
  • --mtu=BYTES——容器网络中的MTU。

  下面2个命令选项既可以在启动服务时指定,也可以Docker容器启动(docker run)时候指定。在Docker服务启动的时候指定则会成为默认值,后续执行docker run时可以覆盖设置的默认值。

  • --dns=IP_ADDRESS...——使用指定的DNS服务器;
  • --dns-search=DOMAIN...——指定DNS搜索域。

  最后这些选项只能在docker run执行时使用,因为它是针对容器的特性内容:

  • -h HOSTNAME or--hostname=HOSTNAME——配置容器主机名;
  • --link=CONTAINER_NAME:ALIAS——添加到另一个容器的连接;
  • --net=bridge|none|container:NAME_or_ID|host|user_defined_network——配置容器的桥接模式;
  • -p SPEC or--publish=SPEC——映射容器端口到宿主主机;
  • -P or--publish-all=true|false——映射容器所有端口到宿主主机。

  其中,--net选项支持五种模式,如下所示:

  • --net=bridge——默认配置。为容器创建独立的网络命名空间,分配网卡、IP地址等网络配置,并通过veth接口对将容器挂载到一个虚拟网桥(默认为docker0)上;
  • --net=none——为容器创建独立的网络命名空间,但不进行网络配置,即容器内没有创建网卡、IP地址等;
  • --net=container:NAME_or_ID——意味着新创建的容器␀享指定的已存在容器的网络命名空间,两个容器内的网络配置共享,但其他资源(进程空间、文件系统等)还是相互隔离的;
  • --net=host——意味着不为容器创建独立的网络命名空间,容器内看到的网络配置(网卡信息、路由表、Iptables规则等)均与主机上保持一致。注意其他资源还是与主机隔离的;

 

  

 

 

  

 

转载于:https://www.cnblogs.com/weidongliu/p/11242742.html

你可能感兴趣的文章
使用arcpy添加grb2数据到镶嵌数据集中
查看>>
[转载] MySQL的四种事务隔离级别
查看>>
QT文件读写
查看>>
C语言小项目-火车票订票系统
查看>>
缓和曲线06七次四项式
查看>>
15.210控制台故障分析(解决问题的思路)
查看>>
BS调用本地应用程序的步骤
查看>>
常用到的多种锁(随时可能修改)
查看>>
用UL标签+CSS实现的柱状图
查看>>
js:语言精髓笔记3----语句
查看>>
mfc Edit控件属性
查看>>
ThreadPoolExecutor分析
查看>>
Linq使用Join/在Razor中两次反射取属性值
查看>>
[Linux]PHP-FPM与NGINX的两种通讯方式
查看>>
Java实现二分查找
查看>>
优秀员工一定要升职吗
查看>>
[LintCode] 462 Total Occurrence of Target
查看>>
springboot---redis缓存的使用
查看>>
架构图-模型
查看>>
sql常见面试题
查看>>