default bridge模式
默认桥接模式
我们通过示例来理解默认网桥模式以及它与用户自定义网桥的区别。
第一步:在开始之前列出当前已经存在的网络。在我们没有添加任何新的网络之前,我们至少应该看到下面这些网络:
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
17e324f45964 bridge bridge local
6ed54d316334 host host local
7092879f2cc8 none null local默认桥接网络,主机网络和none被罗列了出来。后者两种网络模式拥有完整特性的网络。但是它们被用于启动一个直接连接到主机网络栈的容器,或者启动一个不带网络设备的容器。这里我们会将两个容器连接到桥接网络。
第二步:启动两个运行ash的alpine容器,alpine容器的默认shell是ash而不是bash。-dit表示在后台运行容器,并且分配一个伪终端给用户,使其可以与容器进行交互。由于我们是在后台运行一个容器,我们无法立马连接到该容器。相反,容器的ID会被打印出来,因为我们没有通过--network指定任何网络,因此容器默认连接到默认桥接网络。
$ docker run -dit --name alpine1 alpine ash
$ docker run -dit --name alpine2 alpine ash检查两个容器是否正常启动:
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
602dbf1edc81 alpine "ash" 4 seconds ago Up 3 seconds alpine2
da33b7aa74b0 alpine "ash" 17 seconds ago Up 16 seconds alpine1第三步:检查容器所连接的桥接网络:
Last updated
Was this helpful?