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上的镜像,速度非常慢, ...
随机推荐
- CLR via C#中的一个多线程例子
parallel的For和ForEach方法有一些重载版本允许传递三个委托 1.任务局部初始化委托(localInit),未参与工作的每一个任务都调用一次委托,在任务被要求处理前调用. 2.主体委托( ...
- 【转载】stm32中断学习
中断对于开发嵌入式系统来讲的地位绝对是毋庸置疑的,在C51单片机时代,一共只有5个中断,其中2个外部中断,2个定时/计数器中断和一个串口中断,但是在STM32中,中断数量大大增加,而且中断的设置也更加 ...
- bzoj1487 [HNOI2009]无归岛
Description Neverland是个神奇的地方,它由一些岛屿环形排列组成,每个岛上都生活着之中与众不同的物种.但是这些物种都有一个共同的生活习性:对于同一个岛 上的任意两个生物,他们有且仅有 ...
- bzoj4031 [HEOI2015]小Z的房间
Description 你突然有了一个大房子,房子里面有一些房间.事实上,你的房子可以看做是一个包含n*m个格子的格状矩形,每个格子是一个房间或者是一个柱子.在一开始的时候,相邻的格子之间都有墙隔着. ...
- uoj#73 【WC2015】未来程序
在 2047 年,第 64 届全国青少年信息学奥林匹克冬令营前夕,B君找到了 2015 年,第 32 届冬令营的题目来练习. 他打开了第三题 “未来程序” 这道题目: 本题是一道提交答案题,一共 10 ...
- TFS下载文件已损坏问题
近日在把一个数千人使用的TFS环境进行机房迁移时,从现有的服务器集群中整体迁移到另外一个服务器集群中,经过周密的设计迁移方案,充分验证方案中的各个关键过程,最终在几乎对数千人用户完全透明,没有任何感知 ...
- futex-based pthread_cond
pthread_cond的实现使用了几个futex来协同进行同步,以及如何来实现的. 假定你已经明白 futex,futex-requeue,以及 pthread lowlevellock. < ...
- Layout基本属性总结
在Android中,共有五种布局方式,分别是:FrameLayout(框架布局),LinearLayout (线性布局),GridLayout(网格布局),RelativeLayout(相对布局),T ...
- 画地为Mask,随心所欲的高效遮罩组件[Unity]
在上一篇博文"扔掉遮罩,更好的圆形Image组件"中,笔者改变Image的顶点数据,使得Image呈圆形显示,避免了Mask的使用,从而节省Drawcall消耗,提高渲染效率了.这 ...
- loadrunner提高篇-场景设计实践
集合点设置 一.为什么要进行集合点设置? 因为在测试过程中,并不能保证所有的Vuser都在同一时刻进行操作,这样就达不到并发测试的目的,故需要用到集合点技术,集合点的意思是如果在一个操作之前设置了一个 ...