详解docker容器分配静态IP
作者:mosmith 发布时间:2023-06-25 06:18:59
最近因为工作要求需要用学习使用docker,最后卡在了网络配置这一块。默认情况下启动容器的时候,docker容器使用的是bridge策略比如:
docker run -ti ubuntu:latest /bin/bash
等效于
docker run -ti --net=bridge ubuntu:latest /bin/bash
bridge策略下,docker容器自动为我们分配了一个IP地址,并连接到docker0的网桥上。但这里有一个问题,这个IP地址并不是静态分配的,这对我们的对容器的实例的网络管理造成一了些困难。这里笔者并不想直接给出解决方案,因为那样子并没有什么卵用,理解原理,一步一步踏实走才是。
相信看过docker介绍的读者都知道docker是借助于cGroup和namespace技术来实现资源控制和隔离的。在开始之前读者需要去看一下linux上namespace的使用,本文并不想带入太多的其它不相关的主题。好了现在假设你已经了解namespace了,那你肯定想知道docker在网络上是怎么利用namespace来做手脚的。大致过程应该和下面的一致:(下面只是个人猜测,因为笔者并没有太多时间去研究它的源码)
1、创建一个Net Namespace netns1。
2、创建一对veth,将peer加入到netns1,将别一端接入到网桥bridge0中。
3、为这两个veth分配IP。
4、用netns1启动容器中的程序比如/bin/bash。
可惜的是,docker run并没有一个选项让我们去指定所分配的IP,因为网络的确是个大难题。那就得自己动手丰衣足食了。
从上面我们知道,docker在网络这里用到了Net namespace,veth和网桥bridge。注意如果你意图使用ip netns list去查看docker在启动容器的时候使用了那个netns,你会失望地发现没有对应netns。其实并不是没有,而是docker为了掩盖一些细节,在做完初始化工作后,docker便将这个netns从/var/run/netns中删除了,我们完全可以用下面的方式让它打回原形:
ln -s /proc/${container's pid}/ns/net /var/run/netns/${the's name you want to display}
ip netns list
来源:http://www.cnblogs.com/mosmith/p/5372326.html


猜你喜欢
- IIS500错误,是因为微软的一个BUG所造成的。下面是解决办法:主要是由于IWAM账号(在我的计算机即是IWAM_MYSERVER账号)的
- 假设有个人从来没有听说过你的公司,你的网站的人在搜索引擎上搜索你们正好生产的一个产品,这是关键词研究的起始点,请注意,你需要找到的是你的客户
- 一、域名过期后第一阶段域名过期后1~45天内,将处于注册商保留状态whois英文状态:REGISTRAR-HOLD二、域名过期后第二阶段 注
- 1. 后台执行一般运行linux上的程序都是执行 .sh 文件(./sh文件),那如果不影响当前CMD窗口的操作,需要后台运行怎么办呢?这时
- ixwebhosting作为国外知名的主机商之一,购买它们的主机时,它不仅赠送免费域名,还赠送独立IP,当我们使用免费域名的时候,有时为了某
- 使用网络监测器Ethereal(http://ethereal.zing.org/)可以分析网络传输。Ethereal能够跟踪TCP流,对于
- 80后创业者的消费志:将记账演变成一种商业模式这个冬天,对财客在线的运营总监田克山来说,有点不寻常!1983年出生的他,刚在互联网这个行业摸
- 又读了一遍这个 PPT: Federation at Flickr: Doing Billions of Queries Per Day ,
- 首先打开IIS,找到我们的数据库。我们试一下是不是能够下载,正常的情况能够下载的。现在我们就开始配置IIS不让数据库被别人下载,我们在数据库
- 由现有镜像构建新镜像都是通过Dockerfile文档来实现的。1、新建Dockerfile文档在/home文件夹下新建一个文件夹,专门用来测
- 本文介绍了使用Docker部署 spring-boot maven应用,分享给大家,具体如下:部署过程分为以下几个步骤:创建一个简单的spr
- 对于很多站长的网站被某个搜索引擎屏蔽的问题已经很常见了,为什么会出现这样的问题,站长首先要对网站自身分析一下,是否有违反搜索引擎规则的手法,
- 网页抓取优先策略也称为“页面选择问题”(page Selection),通常是尽可能地首先抓取重要性的网页,这样保证在有限的资源内尽可能地照
- 现在有很多的站长在和别人做友情链接的时候都要考虑对方网站的PR值,有很多新站都找不到友情链接,十分可怜。但我认为找友情链接更应该看对方站长的
- 架设FTP站点似乎已经不是什么困难的事情了,我们不需要借助任何外来工具的帮忙,只需要使用Windows服务器系统自带的IIS功能,就能轻易地
- 举例:www.123.com要求:news.123.com获得www.123.com的登陆状态 以及评论/DIGG等更多交互信息不管你是否需
- 据国外媒体报道,谷歌程序员已经克服了Mac Chrome测试版最大的障碍——打印支持,但Window
- 随着Web 2.0技术的迅速发展,许多公司都开发了一些基于Web的网站服务,通常在设计开发Web应用系统的时候很难模拟出大量用户同时访问系统
- 当营销商在思考媒体购买的时候,效果监测指标、用户资料、定价和可用性都是他们首要考虑的问题,但媒体购买中最重要的驱动因素就是内容。如果内容非常
- 个人认为一个站点要运营成功的有这么几个要素(从客户访问网站的角度)。我们可以模拟客户游历网站的过程,一个客户在网上游历,偶然中通过搜索引擎或