当前位置: 首页 > article >正文

【Docker】Docker高级网络(NetWork)

【Docker】Docker高级网络(NetWork)

文章目录

  • 【Docker】Docker高级网络(NetWork)
    • 1. 概述
    • 2. 网络
      • 2.1 网桥类型
      • 2.2 创建网络自定义桥
      • 2.3 查看所有网络
      • 2.4 查看特定网络的细节
      • 2.5 删除特定网络
      • 2.6 多个容器使用指定网络

参考文档:高级网络配置 · Docker – 从入门到实践 (docker-practice.github.io)

1. 概述

当 Docker 启动时,会自动在主机上创建一个 docker0 虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机。它会在挂载到它的网口之间进行转发。

同时,Docker 随机分配一个本地未占用的私有网段(在 RFC1918 中定义)中的一个地址给 docker0 接口。比如典型的 172.17.42.1,掩码为 255.255.0.0。此后启动的容器内的网口也会自动分配一个同一网段(172.17.0.0/16)的地址。

当创建一个 Docker 容器的时候,同时会创建了一对 veth pair 接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包)。这对接口一端在容器内,即 eth0;另一端在本地并被挂载到 docker0 网桥,名称以 veth 开头(例如 vethAQI2QT)。通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。Docker 就创建了在主机和所有容器之间一个虚拟共享网络。

Docker 网络

注意:

  • 默认 docker 在创建容器时将所有容器都连接到 docker0 网桥上,默认在 docker0 网桥的容器都可以使用容器内ip地址进行通信。
  • 容器间还可以使用容器容器名称作为容器ip进行通信,前提是必须使用自定义的网桥,不能使用默认的 docker0

2. 网络

2.1 网桥类型

docker中网桥有四种类型:

  1. **Bridge **:桥接式网络模式 (默认)
  2. Host:开放式网络模式,和宿主机共享网络
  3. Container:联合挂载式网络模式,和其他容器共享网络
  4. None:封闭式网络模式,不为容器配置网络

2.2 创建网络自定义桥

首先查看有关于网络的docker命令参数:

docker network --help

image-20230714165330498

查看创建网桥的命令行参数:

docker network create --help

image-20230714165413184

参数含义:

  • -d:指定网桥类型,默认是 bridge

创建一个名为 test 的网桥:

docker network create -d bridge test

image-20230714165724990


2.3 查看所有网络

docker network ls

image-20230714165928694


2.4 查看特定网络的细节

查看名为 heima 的网络细节:

docker network inspect heima 
image-20230714170129217

2.5 删除特定网络

删除名为 test 的网络:

docker network rm test

删除完毕,查看该网络是否还存在,发现确实已经删除。如图所示:

image-20230714170326015


2.6 多个容器使用指定网络

1)启动容器时明确指定容器使用哪个网络名

docker run -d --network 网络名 ...

2)启动之后把容器加入到某个网络

docker network connect 网络名 容器id(name)

http://www.kler.cn/a/37985.html

相关文章:

  • k8s 2003面试题(1):k8s有哪些特性?
  • 基于vue3+pinia2仿ChatGPT聊天实例|vite4.x仿chatgpt界面
  • 算法06-搜索算法-广度优先搜索
  • ❤️创意网页:如何用HTML制作菜单栏?制作好看的菜单栏样式网页
  • AA@有理系数多项式@整系数多项式@本原多项式@有理多项式可约问题
  • SpringBoot——在测试阶段验证Web表现层的接口是否正常
  • Java泛型接口
  • leetcode|math|9.172.69.50.
  • B树和B+树的区别
  • h5真机调试之ios和Android和vconsole
  • 创建可交互的图表:AntV X6实现预留空白位置、拖拽吸附与信息修改弹框
  • 如何用https协议支持小程序
  • 2023.7.16-约数的枚举
  • webpack插件安装
  • 【深度学习】:用于 GAN 的生成器架构 - 生成人脸
  • via24种人格力量,积极心理学之创造力的力量
  • 云计算UPS监控,怎么办?
  • Clion开发STM32之W5500系列(四)
  • MySQL 第七天作业 nosql作业
  • 互联网行业真的不行了吗?