docker - win7下构建swarm nodes实现跨host的容器之间的通信
前言
之前在Linux环境下尝试了swarm,通过将不同host以swarm nodes 的方式连接到一起(构建Overlay 子网),从而实现跨host的container通信。
今天我们就来说说如何在windows平台上面来建立swarm,以及实现跨host的container通信。
准备活动
首先,我们必须要有 大于等于2 的host,这样才能实现跨host吧,什么?!,不知道怎么在windows主机上面创建多个docker host? 没关系,可以看看我之前的文章。这里放出连接:
http://www.cnblogs.com/atuotuo/p/6945477.html
完成之后,我们就可以在本机上看到2个docker host, 例如:

构建Swarm
创建nodes
我们在第一个host (192.169.99.100)为manager,初始化swarm
$ docker swarm init --advertise-addr 192.168.99.100
完成之后,会有显示给我们一个 token, 之后我们需要时候他来加入swarm。
第二个host(192.169.99.101)加入swarm, 充当worker
$ docker swarm join --token SWMTKN-1-18cpam9ep3qyhyphocwp4axwxdyt30alyutih9miyci48j3g7q-70tp0t3w3bzylxqhy20jpl4bs 192.168.99.100:2377
OK,我们的swarm nodes 就完成了,现在我们在manager node 上面查看swarm 信息, 如下:

创建 Overlay 网络
众所周知,swarm网络的设计是为了在swarm nodes 上面运行 docker service。 所以,在docker 1.13之前,swarm原生态的Overlay网络是不允许单独的container加入其中的。。。
不过,在1.13, 创建网络的时候可以使用 “attachable” 参数来允许单独container加入该网络。 在manager node上面建立网络,如下:
$ docker network create -d overlay --attachable myOverlayNet
我们可以看到,自定义的Overlay网络已经建立完成。

测试网络通信
在host 1和2 上分别运行container,这里以 busybox 作为示例
# run container on host 1
$ docker run -itd --name mybb1 --network myOverlayNet busybox /bin/sh # run container on host 2
$ docker run -itd --name mybb2 --network myOverlayNet busybox /bin/sh
测试container之间的网络通信, 使用 “nslookup” 命令

OK, 我们成功地在window 7上实现了跨host的容器间通信!! 最后,感谢大家的浏览 :)
docker - win7下构建swarm nodes实现跨host的容器之间的通信的更多相关文章
- Docker跨主机容器之间的通信macvlan
找两台测试机: [root@docker1 centos_zabbix]# docker network ls NETWORK ID NAME DRIVER SCOPE 19ac9a55bedb br ...
- Docker怎么实现容器之间的通信?
//TODO 参考资料: https://developer.aliyun.com/article/55912 https://blog.csdn.net/u011541946/article/det ...
- docker容器之间的通信
容器之间互通 新建两个容器 docker run -d --name box1 busybox /bin/sh -c "while true;do sleep 3600;done" ...
- docker环境下构建flannel 网络
flannel 是coreos 开发的网络解决方案,为每一台主机分配一个 subnet,容器从此subnet 中分配ip,ip可以在主机间路由.每个subnet从更大的ip池中划分,为了在各个主机间共 ...
- Docker: Docker容器之间互相通信
最简单的方法,关闭防火墙(只建议用于开发环境) systemctl stop firewalld
- Docker环境下的前后端分离项目部署与运维(十一)Docker Swarm技术
Docker Swarm技术 docker swarm技术(之前的docker集群都是在 一个虚拟主机上的,但是如果这个主机挂掉了over了,docker技术就是多个虚拟主机形成一个集群) Swarm ...
- Docker:使用Ambassador进行跨主机间容器通信
转载请注明出处:点我 由于Docker自身的网络的原因,想要在多主机间的容器之间进行通信是比较麻烦的事情.可以利用Ambassador容器来实现这一功能. 基本原理: 利用Ambassador来实现主 ...
- 【原创】Docker实战 Dockerfile最佳实践&&容器之间通信
官方最佳实践文档 https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#from Docker实战(三十) ...
- docker在win7下的使用
1,安装 win7下需要安装docker-toolbox,然后通过Docker Quickstart Terminal运行 2,加速 直接pull的话是拉取的docker hub上的镜像,速度非常慢, ...
随机推荐
- Spring BeanFactoryPostProcessor
使用场景:当在配置文件中需要配置Bean(参数不同,class相同,id不同时)冗余的情况 继承 BeanFactoryPostProcessor 覆盖 postProcessBeanFactory( ...
- LVS + keepalived(DR) 实战
一.LVS体系结构 使用LVS架设的服务器集群系统有三个部分组成:最前端的负载均衡层,用Load Balancer表示,中间的服务器群组层,用Server Array表示,最底端的数据共享存储层,用S ...
- 1.6 在WHERE子句中引用取别名的列
如下查询,会抛出错误:mysql> select sal as salary, comm as commission from emp where salary < 5000;ERROR ...
- 【从无到有】教你使用animation做简单的动画效果
今天写写怎么用animation属性做一些简单的动画效果 在CSS选择器中,使用animition动画属性,调用声明好的关键帧 首先声明一个动画(关键帧): @keyframes name{ from ...
- 【2017-04-25】winform公共控件、菜单和工具栏、Tab和无边框窗体制作
一.公共控件 1. Button 按钮 + 布局 - AutoSize 按钮尺寸自动适应里面内容的长度 - Location 位置 - Margin 控件与控件外边距 - S ...
- bzoj 3028: 食物 -- 母函数
3028: 食物 Time Limit: 3 Sec Memory Limit: 128 MB Description 明明这次又要出去旅游了,和上次不同的是,他这次要去宇宙探险! 我们暂且不讨论他 ...
- 有些arp请求报文中为什么会有目的mac地址(不使用广播地址)
有些arp请求报文中为什么会有目的mac地址(不使用广播地址) 最近做实验,注意到局域网内大部分的arp包的以太网头部目的mac地址并不是广播地址,并且包内的目的mac地址字段并不是全0,而是目的ip ...
- Struts2之2.5.10.1HelloWorld
Struts2.5.10.1是目前为止最新的版本,struts2建议持续跟进,理由大家都懂.好了,下面步入正题. 基于struts2.5.10.1建立一个HelloWorld,基于注解的哈! 工具:e ...
- [刷题]算法竞赛入门经典(第2版) 5-15/UVa12333 - Revenge of Fibonacci
题意:在前100000个Fibonacci(以下简称F)数字里,能否在这100000个F里找出以某些数字作为开头的F.要求找出下标最小的.没找到输出-1. 代码:(Accepted,0.250s) / ...
- [刷题]算法竞赛入门经典(第2版) 5-11/UVa12504 - Updating a Dictionary
题意:对比新老字典的区别:内容多了.少了还是修改了. 代码:(Accepted,0.000s) //UVa12504 - Updating a Dictionary //#define _XieNao ...