docker容器设置固定IP

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker容器设置固定IP相关的知识,希望对你有一定的参考价值。

参考技术A 需要将容器的ip设置为固定ip

docker的网络类型

docker默认的有三种网络类型,bridge、host和none,可通过如下命令查看

sudo docker network ls

默认情况下启动、创建容器都是用该模式,所以每次docker容器重启时会按照顺序获取对应ip地址,这就导致容器每次重启,ip都发生变化

启动容器时,可以通过–network=none,docker容器不会分配局域网ip

docker容器的网络会附属在主机上,两者是互通的。

sudo docker network create --subnet=127.127.0.0/16 staticnet

通过docker network ls可以查看到网络类型中多了一个staticnet

sudo docker run -it --name test --net staticnet --ip 127.127.0.2 centos /bin/bash

docker inspect <containtor_id>

将容器停止,并重新启懂,发现容器ip并未发生改变,测试成功。

docker容器ip地址的设定

技术图片

mynetwork是自己定的网络名称

技术图片

上图首句是用来查看容器的所有信息,第二句是查看所有容器的ip地址

技术图片

 创建具体网段的操作

 技术图片

创建固定ip的容器

技术图片

指定了固定ip之后容器重启ip地址依然不会改变

技术图片

-----------------------------------------------------------------------------------------------------------------手动分割-----------------------------------------------------------------------------------------

为何要指定固定的ip地址呢,因为在默认条件下创建容器默认是bridge桥接,启动容器ip是随机分配并且递增的,而且容器之间可以互相通信,网段也是固定的

当容器一旦关闭再次启动就会导致ip地址再次重新分配,而且有部分容器在部署的时候是不需要互相通信的,所以使用固态ip,保证想要通信的容器在同一网段,并且容器重启之后ip地址也不会随之改变。

-----------------------------------------------------------------------------------------------------------------再次手动分割------------------------------------------------------------------------------------------

=。=写的不好,请多多担待

 

以上是关于docker容器设置固定IP的主要内容,如果未能解决你的问题,请参考以下文章

OVS+Docker网络打通

docker设置固定ip地址

docker镜像为啥有自己的ip

docker-compose 容器固定IP(network subnet)

docker-compose 容器固定IP(network subnet)

Docker 设置固定网络IP