扫码一下
查看教程更方便
docker 可以负责处理网络,以便容器可以与其他容器以及 docker 主机通信。 如果在 docker 主机上执行 ifconfig,我们将看到 docker 以太网适配器。此适配器是在 docker 主机上安装 docker 时创建的。
这是 docker 主机和 linux 主机之间的桥梁。 现在让我们看看 docker 中与网络相关的一些命令。
下面命令可用于列出主机上与 docker 关联的所有网络。
$ docker network ls
执行上面的命令输出如下所示
如果您想查看与 docker 关联的网络的更多详细信息,可以使用下面的命令。
$ docker network inspect bridge
显示结果如下
[
{
"name": "bridge",
"id": "ba78424c71f10d47abc4f18be1540353cce5e2da76e9bb3bf6d98fe1ea214ced",
"created": "2022-03-15t14:08:36.095093214z",
"scope": "local",
"driver": "bridge",
"enableipv6": false,
"ipam": {
"driver": "default",
"options": null,
"config": [
{
"subnet": "172.17.0.0/16",
"gateway": "172.17.0.1"
}
]
},
"internal": false,
"attachable": false,
"ingress": false,
"configfrom": {
"network": ""
},
"configonly": false,
"containers": {},
"options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1500"
},
"labels": {}
}
]
现在让我们运行一个容器,看看当我们再次检查网络时会发生什么。 让我们使用以下命令启动一个 ubuntu 容器
$ docker run –it ubuntu:latest /bin/bash
现在,如果我们通过以下命令检查我们的网络名称,现在将看到容器已连接到bridge。
$ docker network inspect bridge
可以在启动容器之前在 docker 中创建网络。 这可以通过以下命令完成
$ docker network create –-driver drivername name
我们看下面的示例
$ docker network create –-driver bridge new_nw
现在可以在启动容器时附加新网络。 因此,让我们使用以下命令启动一个 ubuntu 容器
$ docker run –it –network=new_nw ubuntu:latest /bin/bash
现在,当通过以下命令检查网络时,我们将看到连接到网络的容器。
$ docker network inspect new_nw