Bootstrap

创建、修改Docker容器网络地址

查看docker 网络列表

docker network ls
在这里插入图片描述
docker network 相关命令
在这里插入图片描述

查看网络详情

在这里插入图片描述

查看容器信息,容器的ip

docker inspect 容器id

在这里插入图片描述
在这里插入图片描述

1.创建自定义网络(默认是桥接模式)

方式1:

docker network create 网络名称

方式2:指定IP和网关

docker network create --subnet=172.10.0.0/16 --gateway=172.10.0.1 mynetwork

方式3:创建网络并绑定物理网卡
网络模式 macvlan
macvlan 可以将虚拟网卡跟主机共用同一网段。

docker network create -d macvlan  --subnet=172.16.86.0/24  --gateway=172.16.86.1  -o parent=eth0 网络名称
	-o parent=eth0  将虚拟网络绑定网卡
docker network create -d macvlan --subnet=[网段] --gateway=[网关] -o parent=[网卡] macvlan
例如,我查询到的网卡名是eth0,网关是192.168.1.1,这样我可以创建一个名字叫new_macvlan01的macvlan网络如下:
docker network create -d macvlan --subnet=192.168.1.1/24 --gateway=192.168.1.1 -o parent=eth0 new_macvlan01

之后如果想给容器一个固定IP,可以使用如下命令创建一个容器,并给它一个固定IP:

docker run -it --name [容器名] --net macvlan --ip=[固定IP] [镜像名] /bin/bash
例如,我想以centos镜像创建一个名字叫test的容器,并给它一个IP为192.168.1.10
docker run -it --name test --net macvlan --ip=192.168.1.10 centos /bin/bash

2.解除容器绑定的网络

docker network disconnect 网络名称 容器名称

3.为容器重新指定网络

docker network connect 网络名称 容器名称

为容器重新指定网络和ip

 docker network connect  网络名称 容器名称 --ip 192.168.252.10

4.重启容器

docker restart 容器名称

5.查看效果

docker inspect 容器名称

在这里插入图片描述

Bridge模式
Bridge模式是Docker默认的网络模式,当Docker进程启动时,会在主机上创建一个名为docker0的虚拟网桥,用来连接宿主机和容器,此主机上的Docker容器都会连接到这个虚拟网桥上,虚拟网桥的工作方式和物理交换机类似,这样所有容器就通过交换机连在了一个二层网络中。

macvlan模式
macvlan本身是linxu kernel的模块,本质上是一种网卡虚拟化技术。其功能是允许在同一个物理网卡上虚拟出多个网卡,通过不同的MAC地址在数据链路层进行网络数据的转发,一块网卡上配置多个 MAC 地址(即多个 interface),每个interface可以配置自己的IP,Docker的macvlan网络实际上就是使用了Linux提供的macvlan驱动

;