学院网站建设,wp网站如何做文件的付费下载,备案网站建设方案模板,做本机网站说明
容器跟宿主机、其他容器通信的关键在于它们要在同一个网络#xff0c;或者通过修改路由信息来可以让它们互相之间能够找得到对方的 IP。本文主要介绍让它们在同一个网络的方法。
Docker 自定义网络模式介绍
Docker容器可以通过自定义网络来与宿主机或其他容器进行通信…说明
容器跟宿主机、其他容器通信的关键在于它们要在同一个网络或者通过修改路由信息来可以让它们互相之间能够找得到对方的 IP。本文主要介绍让它们在同一个网络的方法。
Docker 自定义网络模式介绍
Docker容器可以通过自定义网络来与宿主机或其他容器进行通信。在Docker中有三种类型的网络bridge网络、host网络和Overlay网络。
Bridge网络
Bridge网络是最常用的网络类型每个Docker主机都具有一个默认的Bridge网络。当Docker容器启动时它将自动加入默认的Bridge网络并分配一个IP地址。Docker容器可以通过容器名称或IP地址来与其他容器进行通信。如果要将容器暴露给宿主机或外部网络则可以使用“docker run”命令中的“-p”或“–publish”选项指定端口映射。
Host网络
Host网络允许Docker容器直接使用宿主机的网络堆栈。这意味着容器将使用宿主机的IP地址并且不会进行任何网络地址转换NAT。这使得容器直接访问宿主机上的其他服务变得更加容易。要使用Host网络请在“docker run”命令中使用“–networkhost”选项。
Overlay网络
Overlay网络是一种多节点网络它允许Docker容器在不同的Docker主机之间进行通信。这种网络类型需要使用Docker Swarm或Kubernetes等Docker集群管理工具。在Overlay网络中每个Docker容器分配一个唯一的IP地址并且容器间的通信是通过虚拟网络进行的。
总之通过使用自定义网络和IP地址Docker容器可以轻松地与宿主机和其他容器进行通信从而实现更高效的应用程序部署和管理。
下面以 Bridge 模式来举例
创建自定义网络
假设你的网络 IP 是 a.b.c.1子网掩码是 255.255.255.0 自定义网络名称为 mynet。那么可以使用下面的命令来创建自定义网络 docker network create --driver bridge --subnet a.b.c.0/20 mynet
通信测试
先创建容器 docker run -it --network mynet --ip a.b.c.11 ubuntu:20.04
安装 inetutils-ping apt install -y inetutils-ping
通信测试
3.1 跟宿主机通信 ping a.b.c.1
3.2 跟其他容器通信 ping a.b.c.22
3.3 跟互联网通信 ping www.baidu.com
如果请求没有超时且没有丢包则说明通信成功