Docker服务安装完成之后,默认在每个宿主机会生成一个名称为docker0的网卡其IP地址都是 172.17.0.1/16。
ping、 nslookup、 ifconfig、 ip、 curl
监督体系状态和管理进程的工具集合
默认情况下,同一个宿主机的不同容器之间可以相互通信。
不同宿主机之间的容器IP地址重复,默认不能相互通信。
在docker.service配置文件中的fd://背面添加--icc=false 选项可以禁止同一个宿主机的不同容器间通信。
自定义的容器名称可能后期会发生变革,那么一旦发生变革也会带来一些影响,这个时候假如每次都更改名称又比较麻烦3.1、指令格式
这个时候可以使用定义别名的方式解决,即容器名称可以随意更改,只要不更改别名即可。
3.3、使用别名相互通信
- --link nginx_v2:nginx_v2_alias: 设置容器间的链接。
- 这里表示当前新创建的容器将与名为 nginx_v2 的容器建立链接,而且在新容器内部,这个链接将以 nginx_v2_alias 的别名存在。
- 链接答应容器之间相互通信,而且可以使用别名通过情况变量等方式访问被链接容器的信息。
当我们创建了一个自定义网络(my_network)Docker 会创建一个新的桥接网络(bridge driver)。4.2、启动两个容器并毗连到自定义网络
其底层技能仍然是基于桥接网络实现的,即每个毗连到此自定义网络的容器都会得到一个虚拟网卡,并通过Docker管理的一个虚拟网桥(类似于默认的bridge网络所使用的网桥)与其他容器以及宿主机进行通信。
使用Host网络模式,容器直接使用宿主机的网络栈
在 host 网络模式下,容器直接使用宿主机的网络栈,没有独立的网络命名空间,因此容器内部的服务就直接监听在宿主机的网络接口上,不再须要端口映射。
可以看到Docker是会忽略--network host模式启动容器时指定的端口映射的5.2、使用Host网络模式进行通信
此时其他容器就可以通过宿主机的ip和端口进行访问
这里的镜像mycentos_nginx:v1用的是之前Docker制作镜像中的使用DockerFile制作的nginx镜像
默认会生成三种不同的网络2、常见的五种网络模式
bridge 、host 、null
安装Docker后会默认启用ip_forward
有两种方式可以修改bridge网络的默认网段,但是两种只能选择一种,否则docker服务无法启动3.4.1、修改docker.service文件
修改配置文件前记得备份,前面跟着做的就不须要重复备份了
没有这个文件的是没有开启镜像加速功能
阿里云镜像加速 -> 容器镜像服务 -> 镜像工具 -> 镜像加速器 依据操作文档添加
注意:由于之前示例的容器均没有固定ip以及设置随docker自启以是以上操作会导致用于示例的容器都是Exited (0)状态,而且重启容器后ip地址也会从新设置的网段开始分配4、Host网络模式
可以看到再创建nginx容器就会出现端口冲突的情况5、none网络模式
也无法使用端口映射,由于是公用宿主机的80端口
mode不支持host和none,默认是bridge模式7.3.2、命令
此时会新添加一个虚拟网卡和网桥
用brctl show检察新的虚拟网卡对应的interfaces显示为空。
PREROUTING 和 OUTPUT 链中的DOCKER规则
POSTROUTING 链中的MASQUERADE规则
- 规则答应所有目的地址为本地(dst-type LOCAL)的数据包进入,并将其标记为DOCKER流量,这是为了确保发往本地而且最终目标是Docker容器的流量能够被正确处理。
- 在OUTPUT链中,有规则指明所有出站流量假如不是发往127.0.0.0/8(即本地回环),且目标是本地的,也会被标记为DOCKER流量。
DOCKER链中的规则
- 多个MASQUERADE规则用于未来自不同子网(如172.172.0.0/16和172.18.0.0/16)的流量伪装成主机的IP地址,以便容器可以透明地访问外部网络。这表明容器对外通信时,它们的源IP会被替换为主机的外网IP。
- RETURN规则指示当数据包来自于特定的Docker网络接口(如br-8f95cd5b3ac0, docker0, br-0c93f493d62d)时直接返回,这通常意味着这些网络内部的流量不须要进一步处理。
- DNAT(Destination NAT,目标地址转换)规则将到达主机的特定端口(例如8094至8099)的数据包转发到对应的容器内端口80上。这展示了端口映射配置,答应外部访问容器的服务。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |