docker容器配置 同网段局域 互通

本次实验为 centos6.5版本  虚拟机,不升级内核   

(7版本有所不同 需要额外安装 bridge-utils包做桥接网卡  其他差不多同样操作)

注意1:  物理机桥接后,有可能需要把网卡拔了重新插 才能生效
      esxi虚拟化管理器有混杂模式的点击按钮,而KVM虚拟管理器的,没有点击按钮调 混杂模式, 桥接网卡就是混杂模式了 
注意2:  在桥接分配同网段IP后,如果删除正在运行的容器,会导致宿主机down机

将docker容器 配置成 局域同网段和上网

[root@Docker ~]# uname -r
2.6.32-431.el6.x86_64


1、安装docker

[root@Docker ~]# rpm -ivh http://dl.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

[root@Docker ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

[root@Docker ~]# yum -y install docker-io              #7版本安装默认自带的docker就好了

[root@Docker ~]# yum install device-mapper-event-libs    #防止启动docker时 死锁,7版本不需要安装,默认已经安装 
                                                                                
[root@Docker ~]# service docker restart

[root@Docker ~]# service docker status

[root@Docker ~]# docker pull centos:6

[root@Docker ~]# ip link set dev docker0 down       #删除以前的网桥,docker0 为你启动容器时候自动创建
                                                    #可以不删除docker0,不删除有时会有冲突,但建议删除比较好
[root@Docker ~]# brctl delbr docker0

[root@Docker ~]# brctl show                #查看桥接 状态信息

[root@Docker ~]# cd /etc/sysconfig/network-scripts/

[root@Docker network-scripts]# vim ifcfg-eth0       #配置网桥

DEVICE=eth0
HWADDR=00:0C:29:6D:DF:B8
TYPE=Ethernet
UUID=0b55c691-24ed-422d-bfbd-16bc03fecda4
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
BRIDGE=br0

[root@Docker network-scripts]# vim ifcfg-br0

TYPE=Bridge
DEVICE=br0
HWADDR=00:0C:29:6D:DF:B8
UUID=0b55c691-24ed-422d-bfbd-16bc03fecda4
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.12.169
GATEWAY=192.168.12.254
DNS1=192.168.10.2

注意:
#7版本 不可以用systemctl restart network命令启动网卡,否则会down网卡,和6版本同样用service 启动网卡
 或者先关闭网络管理器 有冲突 systemctl stop NetworkManager 再用systemctl restart network命令启动网卡

 

#pipework是Docker公司工程师Jerome Petazzoni在Github上发布的名为pipework的工具。号称是容器网络的SDN解决方案,可以在复杂的场景下将容器连接起来。它既支持普通的LXC容器,也支持Docker容器。

Pipework有个缺陷,容器重启后IP设置会自动消失,需要重新设置。

下载地址:https://pan.baidu.com/s/1Gmbgqlrgx0_Fb0uNYVsYzQ

[root@Docker network-scripts]# service network restart       

[root@Docker network-scripts]# unzip pipework-master.zip

[root@Docker network-scripts]# cp pipework-master/pipework /usr/local/bin/

[root@Docker network-scripts]# cd

#由于6 7版本中 iproute默认版本不支持 ,后期分配IP给容器时会报错,所以需要升级

[root@Docker ~]# rpm -qa|grep iproute    #当前iproute版本  #7版本默认3.1需要升级到4.11并且重启服务器才生效
iproute-2.6.32-31.el6.x86_64

[root@Docker ~]# yum install -y http://rdo.fedorapeople.org/rdo-release.rpm

[root@Docker ~]# vim /etc/yum.repos.d/rdo-release.repo 
                                                        #7版本把后面epel-6改成epel-7即可
[openstack-queens] 
name=OpenStack Queens Repository                                     
baseurl=https://repos.fedorapeople.org/repos/openstack/EOL/openstack-icehouse/epel-6/  
skip_if_unavailable=0
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-kilo

[root@Docker ~]# yum repolist

[root@Docker ~]# yum install -y iproute

[root@Docker ~]# rpm -qa|grep iproute            #升级后的iproute版本 
iproute-2.6.32-130.el6ost.netns.2.x86_64

[root@Docker ~]# docker run -itd --net=none --name test centos:6 /bin/bash  #运行容器

[root@Docker ~]# pipework br0 test 192.168.12.37/24@192.168.12.254

[root@Docker ~]# docker exec -it test /bin/bash

[root@5d9a7e86cb62 /]# ifconfig | head -5
eth1      Link encap:Ethernet  HWaddr BE:1F:68:72:40:08  
          inet addr:192.168.12.37  Bcast:192.168.12.255  Mask:255.255.255.0
          inet6 addr: fe80::bc1f:68ff:fe72:4008/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:11266 errors:0 dropped:0 overruns:0 frame:0

[root@5d9a7e86cb62 /]# yum -y install iputils   #安装ping命令软件包

[root@5d9a7e86cb62 /]#yum -y install openssh-cline openssh-server  #安装允许ssh远程连接

[root@5d9a7e86cb62 /]#passwd root   #给用户配置密码

[root@5d9a7e86cb62 /]#vi /etc/ssh/sshd_config  #找到 UsePAM 参数,默认时yes,改成no即可

UsePAM no

[root@5d9a7e86cb62 /]#service sshd restart #重启远程连接传输bash-completion-2.1-6.el7.noarch.rpm命令补全包

命令补全包下载地址: https://pan.baidu.com/s/18nGn12aQtwgFRAFg7oBfXA

[root@5d9a7e86cb62 /]#rpm -ivh bash-completion-2.1-6.el7.noarch.rpm

[root@5d9a7e86cb62 /]#exit  #退出 重新连接,命令就会补全了

[root@5d9a7e86cb62 /]# ping 192.168.12.254      #ping网关
PING 192.168.12.254 (192.168.12.254) 56(84) bytes of data.
64 bytes from 192.168.12.254: icmp_seq=1 ttl=254 time=5.53 ms

[root@5d9a7e86cb62 /]# ping www.baidu.com                       #到此完成
PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.
64 bytes from 14.215.177.39: icmp_seq=1 ttl=55 time=6.36 ms
64 bytes from 14.215.177.39: icmp_seq=2 ttl=55 time=7.14 ms
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值