扫码一下
查看教程更方便
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