Docker容器在启动的时候默认是会有一块网卡的,但是在很多场景下,容器仅仅有一块网卡是不够的,而且,我们对于docker网卡的地址也有一些要求,那么这个时候就需要我们对容器进行添加网卡,并配置IP地址。
【Docker有关于网络配置的命令】
docker network create #创建一个网络将容器连接到网络
docker network connect #将容器连接到网络
docker network disconnect #断开容器的网络
docker network inspect #显示一个或多个网络的详细信息
docker network ls #列出网络
docker network prune #删除所有未使用的网络
docker network rm #删除一个或多个网络
【解决方案】
1、新建docker虚拟网卡
#新建默认IP地址段的网络
docker network create --driver bridge <网卡名称>
e.g:docker network create --driver bridge mynet1
#新建自定义IP段的网络
docker network create --driver bridge --subnet --gateway <网关> <网卡名称>
e.g:docker network create --driver bridge --subnet 192.168.100.0/24 --gatway 192.168.100.1 mynet2
2、为容器添加网卡
#创建容器时添加
docker run -itd -p 80:80 --network mynet1 php:5.6.36-apache #随机分配IP地址
docker run -itd -p 80:80 --network mynet2 --ip 192.168.100.8 php:5.6.36-apache #指定IP地址
#容器已经创建,追加一块网卡
docker network connect mynet2 <容器id>
e.g:docker network connect mynet2 2b6c292e0420
那么通过上面的命令进行操作,我们便可以进行自定义网卡,并且为docker容器进行网络及网络IP地址的配置。
命令详细参数,请参见:docker network命令详解