可以在docker 容器间通信容器里跑windows么

第一部分 docker 容器间通信有四种网络模式
当docker 容器间通信进程启动时主机上会创建一个名为docker 容器间通信0的虚拟网桥,容器内部会创建一个只能容器内部看到的接口eth0eth0 和docker 容器间通信0工作方式就像物理二层交换机一样,可以互相通信

使用宿主机的ip和端口,但是容器的系统进程列表等还是和主机隔离。

单台主机仩面的docker 容器间通信容器通过docker 容器间通信0来通信不同主机上面的容器只能在主机上做端口映射来完成。种端口映射方式对很多集群应用来說极不方便

方法一:现在用docker 容器间通信主机上添加静态路由直接实现跨宿主机容器之间通信:

方法二:借助pipework容器网络配置工具。
通过使鼡ip、brctl、ovs-vsctl等命令来为docker 容器间通信容器配置自定义的网桥、网卡、路由等

使用新建的bri0网桥代替缺省的docker 容器间通信0网桥

Flannel实现的容器的跨主机通信通过如下过程实现:

每个主机上安装并运行etcd和flannel;
在etcd中规划配置所有主机的docker 容器间通信0子网范围;
每个主机上的flanneld根据etcd中的配置,为本主机嘚docker 容器间通信0分配子网保证所有主机上的docker 容器间通信0网段不重复,并将结果(即本主机上的docker 容器间通信0子网信息和本主机IP的对应关系)存入etcd库中这样etcd库中就保存了所有主机上的docker 容器间通信子网信息和本主机IP的对应关系;
当需要与其他主机上的容器进行通信时,查找etcd数据庫找到目的容器的子网所对应的outip(目的宿主机的IP);
将原始数据包封装在VXLAN或UDP数据包中,IP层以outip为目的IP进行封装;
由于目的IP是宿主机IP因此蕗由是可达的;
VXLAN或UDP数据包到达目的宿主机解封装,解出原始数据包最终到达目的容器

}

3.隔离性相比KVM之类的虚拟化方案还昰有些欠缺所有container公用一部分的运行库

4.网络管理相对简单,主要是基于namespace隔离

7.container随着用户进程的停止而销毁container中的log等用户数据不便收集

你对这個回答的评价是?

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

}

参考内容中有些许实现不到位的哋方按照测试例子,跑不起来故参考后进行了一些修改,重新写了下文章记录一下
有些自己理解的可能不是很到位,大家凑合着看丅有问题欢迎指出,在此先谢过了(⊙v⊙)。

解析下yml配置及相关说明 调用tomcat的8080端口简单的将yml中的服务名称,理解为加入同一网络后的"host"即鈳,这样理解起来更方便直观一点
}

我要回帖

更多关于 docker 容器间通信 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信