我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Docker如何实现同Ip网段联通

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Docker如何实现同Ip网段联通

这篇文章主要介绍“Docker如何实现同Ip网段联通”,在日常操作中,相信很多人在Docker如何实现同Ip网段联通问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker如何实现同Ip网段联通”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

例如

宿主机a 和宿主机b是网络联通关系,在宿主机a上面创建了多个容器组成集群,但是我希望通过宿主机b也可以访问到宿主机a的容器,当然,你也可能会说,端口映射非常方便,如果我需要的端口比较多,或者着如果我临时需要增加某些端口,可能设置起来比较麻烦,那么如果我们将宿主机a里面的容器的ip与宿主机的ip在同一个网络,不就可以直接来进行互联互通了么。

Docker如何实现同Ip网段联通

1、安装docker(linux服务器)

安装 docker

yum install docker

2、 使用pipework为docker容器配置独立ip

安装pipework这个工具可以使用一条命令就可以实现更改容器的ip,更准确来说为容器ip添加一个新的网卡。

wget https://github.com/jpetazzo/pipework/archive/master.zip
unzip master.zip 
cp pipework-master/pipework /usr/local/bin/
chmod +x /usr/local/bin/pipework

3、编辑ip的配置文件,eh0

编辑默认ip配置文件,eth0或者ens33(不同操作系统,名称不一致,例如我操作的这台机器的名称为ifcfg-ens33)
vim /etc/sysconfig/network-scripts/ifcfg-ens33

输入i进入到编辑模式,将下面的内容复制到文件中

type=ethernet
proxy_method=none
browser_only=no
bootproto=dhcp
defroute=yes
ipv4_failure_fatal=no
ipv6init=yes
ipv6_autoconf=yes
ipv6_defroute=yes
ipv6_failure_fatal=no
ipv6_addr_gen_mode=stable-privacy
name=ens33
uuid=36b40bc6-6775-4e02-8161-e245d0e3892f
device=ens33
#以下为桥接部分设置
onboot=yes
bridge=br0
peerdns=yes
peerroutes=yes
ipv6_peerdns=yes
ipv6_peerroutes=yes

4、创建自定义网桥br0

vim ifcfg-br0

并且将配置内容复制到配置文件中

 device=br0
 bootproto=static
 nm_cintroller=no
 onboot=yes
 type=bridge
 ipaddr=192.168.186.128
 netmask=255.255.255.0

重启虚拟机网络服务

systemctl restart network

5、修改docker配置文件,指定网桥

修改docker的配置文件/etc/sysconfig/

vim /etc/sysconfig/docker

修改内容如下

options='--selinux-enabled --log-driver=journald --signature-verification=false'

修改为:

options='--selinux-enabled -b=br0'

修改完之后:

# /etc/sysconfig/docker

# modify these options if you want to change the way the docker daemon runs
#options='--selinux-enabled --log-driver=journald --signature-verification=false'
options='--selinux-enabled -b=br0'
if [ -z "${docker_cert_path}" ]; then
  docker_cert_path=/etc/docker
fi

# do not add registries in this file anymore. use /etc/containers/registries.conf
# instead. for more information reference the registries.conf(5) man page.

# location used for temporary files, such as those created by
# docker load and build operations. default is /var/lib/docker/tmp
# can be overriden by setting the following environment variable.
# docker_tmpdir=/var/tmp

# controls the /etc/cron.daily/docker-logrotate cron job status.
# to disable, uncomment the line below.
# logrotate=false

# docker-latest daemon can be used by starting the docker-latest unitfile.
# to use docker-latest client, uncomment below lines
#dockerbinary=/usr/bin/docker-latest
#dockerdbinary=/usr/bin/dockerd-latest
#docker_containerd_binary=/usr/bin/docker-containerd-latest
#docker_containerd_shim_binary=/usr/bin/docker-containerd-shim-latest
other_args='-b br0'

5、重启docker服务

systemctl restart docker

6、创建docker容器实例

docker run -itd --name test1 --net=none centos /bin/bash

--net=none代表容器的网卡都是为空的,需要通过pipework进行自定义指定

7、指定网卡

pipework br0 test1 192.168.186.111/24@192.168.186.128

8、进入到容器,尝试ping宿主机和同网段ip是否能够ping通

# 进入到容器
docker attach test1
# ping 宿主机
ping 192.168.186.22

8.1 修改同网段主机ip

修改主机ip,网段与宿主机a网桥ip段保持一致。设置后,宿主机a,b之间可以互相ping通

# ping 同网段ip
ping 192.168.186.33

到此,关于“Docker如何实现同Ip网段联通”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Docker如何实现同Ip网段联通

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Docker不同网段下的容器互联的实现

本文主要介绍了Docker不同网段下的容器互联的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-01-04

IP地址不在同网段XP系统如何在不同网段共享打印机

假设内部局域网有两个子网“192.168.1*”和“192.16www.cppcns.com8.2.*”“192.168.1*”网段内的电脑想共享打印机,但由于IP地址
2023-06-07

Docker link如何实现容器互联

小编给大家分享一下Docker link如何实现容器互联,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.1、容器间通过IP进行网络访问新建两个容器tomcat0
2023-06-22

docker link容器互联如何实现

这篇“docker link容器互联如何实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“docker link容器互联如何
2023-06-29

Docker容器与主机网络互通如何实现

Docker容器与主机网络互通可以通过以下几种方式实现:使用端口映射:通过在Docker容器启动时使用-p参数将容器内部的端口映射到主机上的一个端口,从而实现容器与主机的网络互通。docker run -p 8080:80 nginx在这个
Docker容器与主机网络互通如何实现
2024-05-07

思科认证之如何巧设IP路由从而实现不一样的网段互通

  根据学术定义,网段是指一个计算机网络中使用同一物理层直接通讯的那一部分。另外,工作在数据链路层或更高层的设备如网桥、交换机、路由器等等,由它们连接起来的两组设备仍然分别处于各自独立的物理层,因此是两个网段。现在就和小编共同来学习一下:思科认证之如何巧设IP路由从而实现不一样的网段互通。  当一个局域网里面一定需要存
思科认证之如何巧设IP路由从而实现不一样的网段互通
2024-04-17

springboot如何实现mqtt物联网

这篇文章将为大家详细讲解有关springboot如何实现mqtt物联网,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Springboot整合mybatisPlus+mysql+druid+swaggerU
2023-06-14

Linux中Docker镜像如何实现字段提取

这篇文章主要介绍Linux中Docker镜像如何实现字段提取,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!字段提取接着,将容器 ID 一列提取出来,这对 awk 来说简直是小儿科:$ docker images |
2023-06-27

Docker如何实现自定义网络

小编给大家分享一下Docker如何实现自定义网络,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、自定义网络实现容器互联四类网络模式,使用docker netwo
2023-06-22

如何实现局域网与广域网互联

这篇文章主要介绍如何实现局域网与广域网互联,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实现局域网与广域网互联的主要设备是“路由器”。路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的
2023-06-15

Docker容器网络更改如何实现

这篇文章主要介绍了Docker容器网络更改如何实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Docker容器网络更改如何实现文章都会有所收获,下面我们一起来看看吧。1.添加自定义网络(默认是桥接模式)doc
2023-07-05

ip协议怎么实现互联网上任意两台计算机的通信

这篇文章主要介绍“ip协议怎么实现互联网上任意两台计算机的通信”,在日常操作中,相信很多人在ip协议怎么实现互联网上任意两台计算机的通信问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ip协议怎么实现互联网上任
2023-06-20

php如何实现判断联通还是电信

小编给大家分享一下php如何实现判断联通还是电信,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!php实现判断联通还是电信的方法:1、创建一个HTML页面并通过js代码验证手机号码是否正确;2、通过PHP代码“public
2023-06-22

里Java如何实现同步互斥通讯

本篇文章给大家分享的是有关里Java如何实现同步互斥通讯,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Java多线程深入理解本文主要从三个方面了解和掌握多线程:1. 多线程的实
2023-05-31

编程热搜

目录