目录
说明
DOCKER默认会连接到虚拟docker0虚拟网卡上,其他宿主机无法直接访问容器。如果需要实现局域网其他主机直接远程连接容器的话,则需要使用桥接网络,为docker容器分配与宿主机同一网段的局域网IP地址。
一、宿主机给dockerk配置桥接
1、安装依赖包
yum install bridge-utils -y
2、删除docker0网络
ifconfig docker0 down brctl delbr docker0
3、停止docker服务
systemctl stop docker
4、网卡配置信息添加BRIDGE=br0
5、创建br0网桥
[root@localhost network-scripts]# vi /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge DEVICE=br0 NAME=br0 BOOTPROTO=none IPADDR=172.18.1.119 NETMASK=255.255.255.0 GATEWAY=172.18.1.254 ONBOOT=yes
6、修改docker启动文件
增加-b=br0
[root@localhost ~]#vim /lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --graph=/data/docker -b=br0
7、重启网络和docker服务
[root@localhost ~]# systemctl daemon-reload [root@localhost ~]# systemctl restart network [root@localhost ~]# systemctl restart docker
二、
手动指定docker获取IP
1、下载pipework
[root@localhost ~]# yum install git -y [root@localhost ~]# git clone https://github.com/jpetazzo/pipework [root@localhost ~]# cp pipework/pipework /usr/bin/
2、启动容器并设置网络
[root@localhost ~]# docker run -itd --net=none --name=centos7 registry.cn-hangzhou.aliyuncs.com/topunix/centos7.7_204m /bin/bash [root@localhost ~]# pipework br0 centos7 172.18.1.238/24@172.18.1.254
3、查看并测试
7、新建docker容器并查看IP地址【】
可以看到成功获取局域网内部的IP地址。但是获取到的是我路由器的地址,不知道为什么不检查。使用桥接网络时最好手动指定ip地址。
拓展:
怎样手动指定IP地址?
本作品采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可
文章评论