用Pipework给Docker多容器配置局域网网络

本文介绍了使用Pipework为Docker容器配置局域网IP时遇到的通信问题,包括容器无法与局域网、外网通信的详细步骤。内容涉及从GitHub下载Pipework、启动无网络模式容器、使用Pipework配置容器、检查接口和路由规则等。问题在于未配置网桥br0的IP和路由信息。解决方法是添加NAT伪装规则,并确保网桥配置正确。
摘要由CSDN通过智能技术生成

用Pipework给Docker多容器配置局域网网络

遇到问题:用pipework工具给Docker容器指定局域网IP地址,容器无法与局域网、外网通信。

pipework是由Docker的工程师Jérôme Petazzoni开发的一个Docker网络配置工具。Docker自身的网络功能比较简单,不能满足很多复杂的应用场景。因此,有很多开源项目用来改善Docker的网络功能,如pipework、weave、flannel等。
这里记录了,笔者在参考两本书的过程中, 使用pipework配置Docker多容器时遇到问题,以及最后的解决办法。

操作流程:

1). 从github上下载pipework:

$ git clone https://github.com/jpetazzo/pipework

2). 开启一个无网络模式指定(–net=none)的容器
$ sudo docker run -it --rm --net=none --name cookbook ubuntu:14.04 bash
root@15afb0c398c5:/# ip -d link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0 
root@15afb0c398c5:/# ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
3). 在另外一个终端窗口使用pipework完成cookbook容器配置
$ sudo pipework/pipework br0 cookbook 192.168.1.10/24@192.168.1.254
[sudo] password for mingchen: 
[mingchen:~]
$ ip -d link 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值