如何实现跨主机之间docker容器通信问题

Posted erlou96

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何实现跨主机之间docker容器通信问题相关的知识,希望对你有一定的参考价值。

这里采用最原始的桥接模式来实现跨主机直接docker容器通信问题

 

一些常用命令

    brctl show br0
    brctl addbr br0
    brctl addif br0 eth0
    ifconfig br0 down

 1.先安装brctl工具包

apt-get install bridge-utils

2.创建一个docker的桥接网络类型(ip填写和同主机网段的ip)

docker network create --subnet=192.168.17.100/16 br0

这里我的宿主机ip为192.168.17.9 网关为192.168.17.254 docker的ip需要同网段即为 192.168.17.*

3.利用网桥工具将docker的网桥挂载到宿主机网卡上

brctl addif br0 eth0
brctl addif br0(docker网桥) eth0(宿主机网卡)

4.设置docker网卡ip

ifconfig br0 192.168.17.100 up

5.启动容器 需提前指定好ip

sudo docker run -it  -h test --privileged=True --net=staticnet --ip 192.168.17.101 --name="docker1" -p 1111:80 -p 1112:8080 ambari:v1.0 /bin/bash

6.对另外一台机器执行上述操作,注意ip别冲突

7.在docker里ping跨主机的另一个docker,如果ping的通

问题解决!!

以上是关于如何实现跨主机之间docker容器通信问题的主要内容,如果未能解决你的问题,请参考以下文章

部署Flannel,实现跨主机Docker容器通信

Docker容器跨主机通信之:直接路由方式

overlay 如何实现跨主机通信?- 每天5分钟玩转 Docker 容器技术(52)

Docker-----网络自定义网络容器通信跨主机容器通信

overlay 如何实现跨主机通信?- 每天5分钟玩转 Docker 容器技术(52)

Docker容器跨主机通信之:直接路由方式