【Docker容器的跨主机访问】- 使用weave实现跨主机容器连接

本文介绍了如何通过Weave在两台机器上的Docker容器之间实现跨主机连接。详细步骤包括在每台机器上安装Weave,启动Weave路由器,指定容器IP,并演示了两个不同主机上的容器能够互相ping通。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

Docker-使用weave实现跨主机容器连接

 

 

 

Weave简介



 

机器1(2.9)

--------------------------------------------

直接从github下载二进制文件安装

root@ubuntu:~#wget -O /usr/local/bin/weavehttps://raw.githubusercontent.com/weaveworks/weave/v1.9.8/weave

root@ubuntu:~#chmod a+x /usr/local/bin/weave

 

启动weave路由器

root@ubuntu:~#weave launch

 

 

查看网桥信息

root@ubuntu:~#brctl show

bridge name    bridgeid           STP enabled    interfaces

docker0            8000.02421d940889       no            

weave              8000.e2cf65d8804e        no             vethwe-bridge

 

 

查看镜像

root@ubuntu:~#docker images

REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE

cct                   latest             9ca8d599337a        28 hoursago        239MB

weaveworks/weaveexec   latest              f8f2bacce064        4 days ago          108MB

weaveworks/weave       latest              97d546443db4        4 days ago          58.3MB

ubuntu                 latest              d355ed3537e9        12 days ago         119MB

hello-world            latest              1815c82652c0        2 weeks ago         1.84kB

weaveworks/weavedb     latest              3f610642de09        6 weeks ago         252B

root@ubuntu:~#

 

 

 

 

 

机器1(2.10)

--------------------------------------------

 

查看网桥信息

root@ubuntu02:~#brctl show

bridge name    bridgeid           STP enabled    interfaces

docker0            8000.02420e860673       no            

 

 

直接从github下载二进制文件安装

root@ubuntu02:~#wget -O /usr/local/bin/weavehttps://raw.githubusercontent.com/weaveworks/weave/v1.9.8/weave

root@ubuntu02:~#chmod a+x /usr/local/bin/weave

 

 

#启动weave并指定机器1IP地址,以便2台机器可以连接在一起

root@ubuntu02:~#weave launch 192.168.2.9

3344a8ec02ae0511827ad6b6619014360987632764b63737c1dff9607169c625

root@ubuntu02:~#

 

 

再次查看网桥信息

root@ubuntu02:~#brctl show

bridge name    bridgeid           STP enabled    interfaces

docker0            8000.02420e860673       no            

weave              8000.4a7558511801       no             vethwe-bridge

root@ubuntu02:~#

 

 

启动一个容器并指定IP

root@ubuntu02:~#c2=$(weave run 192.168.10.2/24 -it cct /bin/bash)

root@ubuntu02:~#echo $c2

83bc5b4ec9b4be265376c425f3a53a47c8798a67e731660408c09acc2e79267c

root@ubuntu02:~#docker attach $c2

root@83bc5b4ec9b4:/# ifconfig

eth0     Link encap:Ethernet  HWaddr02:42:ac:11:00:02 

         inet addr:172.17.0.2 Bcast:0.0.0.0  Mask:255.255.0.0

          UPBROADCAST RUNNING MULTICAST MTU:1500  Metric:1

          RXpackets:56 errors:0 dropped:0 overruns:0 frame:0

          TXpackets:0 errors:0 dropped:0 overruns:0 carrier:0

         collisions:0 txqueuelen:0

          RXbytes:9106 (9.1 KB)  TX bytes:0 (0.0 B)

 

ethwe    Link encap:Ethernet  HWaddr82:c3:c0:f1:c2:61 

         inet addr:192.168.10.2 Bcast:0.0.0.0  Mask:255.255.255.0

          UPBROADCAST RUNNING MULTICAST MTU:1376  Metric:1

          RXpackets:25 errors:0 dropped:0 overruns:0 frame:0

          TXpackets:1 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RXbytes:3922 (3.9 KB)  TX bytes:42 (42.0 B)

 

lo       Link encap:Local Loopback 

         inet addr:127.0.0.1 Mask:255.0.0.0

          UPLOOPBACK RUNNING  MTU:65536  Metric:1

          RXpackets:0 errors:0 dropped:0 overruns:0 frame:0

          TXpackets:0 errors:0 dropped:0 overruns:0 carrier:0

         collisions:0 txqueuelen:0

          RXbytes:0 (0.0 B)  TX bytes:0 (0.0 B)

 

root@83bc5b4ec9b4:/#

 

 

 

 

2台机器中的容器互ping

--------------------------------------------

在机器1(2.9)上启动一个容器并指定IP

root@ubuntu:~#weave run 192.168.10.10/24 -it --name wc1 cct /bin/bash

5534c929688fdf5ddd833bced7b75b0fab470ed1ff09f52f3a1a66691b821322

root@ubuntu:~#docker attach wc1

root@wc1:/#

root@wc1:/# ifconfig

eth0     Link encap:Ethernet  HWaddr02:42:ac:11:00:02 

         inet addr:172.17.0.2 Bcast:0.0.0.0  Mask:255.255.0.0

          UPBROADCAST RUNNING MULTICAST MTU:1500  Metric:1

          RXpackets:54 errors:0 dropped:0 overruns:0 frame:0

          TXpackets:0 errors:0 dropped:0 overruns:0 carrier:0

         collisions:0 txqueuelen:0

          RXbytes:8812 (8.8 KB)  TX bytes:0 (0.0 B)

 

ethwe    Link encap:Ethernet  HWaddrfa:31:8d:64:76:b8 

         inet addr:192.168.10.10 Bcast:0.0.0.0  Mask:255.255.255.0

          UPBROADCAST RUNNING MULTICAST MTU:1376  Metric:1

          RXpackets:24 errors:0 dropped:0 overruns:0 frame:0

          TXpackets:1 errors:0 dropped:0 overruns:0 carrier:0

         collisions:0 txqueuelen:0

          RXbytes:3783 (3.7 KB)  TX bytes:42 (42.0 B)

 

lo       Link encap:Local Loopback 

         inet addr:127.0.0.1 Mask:255.0.0.0

          UPLOOPBACK RUNNING  MTU:65536  Metric:1

          RXpackets:0 errors:0 dropped:0 overruns:0 frame:0

          TXpackets:0 errors:0 dropped:0 overruns:0 carrier:0

         collisions:0 txqueuelen:0

          RXbytes:0 (0.0 B)  TX bytes:0 (0.0 B)

 

 

 

在机器1(2.9)中的容器ping机器2上的容器10.2

root@wc1:/#ping 192.168.10.2

64 bytes from 192.168.10.2: icmp_seq=4 ttl=64time=0.395 ms

root@wc1:/#

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值