Docker 提供三种 user-defined 网络驱动:bridge
, overlay
和 macvlan
overlay 和 macvlan 用于创建跨主机的网络
文章目录
1. 自定义网络
自定义网络需要使用create
命令,先来看看create命令可以跟哪些参数
刚才原生网络不存在域名解析,但是自定义网络存在域名解析
(1)bridge模式
创建自定义的bridge网络并且查看
创建一个bridge模式的网络
由上图我们可以看到创建的网络ID ,使用ip addr查看本机网络:
[root@server1 ~]# docker network create -d bridge my_net1
c0ea578da8ded1a686bb92d222aa08e57d3ccae0263b4cc5a4ed40bf27085ec6
[root@server1 ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
ebe1319bd402 bridge bridge local
73d43be8de20 host host local
c0ea578da8de my_net1 bridge local
0a62de6bab53 none null local
[root@server1 ~]#
运行容器vm1并且指定网络模式为刚才自定义的bridge模式
可以看到ip地址和宿主机的ip不在一个网段
[root@server1 ~]# docker run -it --name vm1 --network my_net1 busybox
/ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
27: eth0@if28: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue
link/ether 02:42:ac: