docker有哪些网络模式

news/2024/11/20 17:05:35/

Docker 提供了多种网络模式(Networking Modes),每种模式都有其特定的用例和优缺点。以下是 Docker 的几种主要网络模式:

1. Bridge 网络(默认)

  • 描述:在这种模式下,Docker 创建了一个桥接网络(bridge),所有容器连接到这个网络并通过虚拟网桥进行通信。
  • 特点
  • 用法
docker run -d --name container_name --network bridge image_name

2. Host 网络

  • 描述:在这种模式下,容器共享宿主机的网络命名空间。容器不会获得独立的网络栈,而是使用宿主机的网络栈。
  • 特点
    • 性能优于 bridge 网络模式,因为没有网络地址转换(NAT)。
    • 容器使用宿主机的 IP 地址和端口。
    • 容器无法使用自定义的端口映射。
  • 用法
docker run -d --name container_name --network host image_name

3. None 网络

  • 描述:在这种模式下,容器没有任何网络连接。它们只有一个 loopback 接口。
  • 特点
    • 容器没有网络接口,无法与外界通信。
    • 适用于需要完全自定义网络配置的场景。
  • 用法
docker run -d --name container_name --network none image_name

4. Container 网络

  • 描述:在这种模式下,容器共享另一个容器网络命名空间。多个容器可以共享一个网络栈。
  • 特点
    • 容器共享 IP 地址和端口范围。
    • 适用于需要在多个容器间共享网络配置的场景。
  • 用法
docker run -d --name container_name --network container:another_container_name image_name

5. Overlay 网络

  • 描述:在这种模式下,Docker Swarm 使用 Overlay 网络跨多个 Docker 主机提供网络连接。
  • 特点
    • 用于跨多主机的容器通信。
    • 适用于 Swarm 集群或 Kubernetes 集群。
    • 提供集群间容器的安全通信。
  • 用法
docker network create -d overlay my_overlay_network
docker run -d --name container_name --network my_overlay_network image_name

6. Macvlan 网络

  • 描述:在这种模式下,Docker 将容器直接连接到物理网络,给每个容器分配一个 MAC 地址,使其在物理网络中像普通设备一样。
  • 特点
  • 用法
sh
复制代码
docker network create -d macvlan \--subnet=192.168.1.0/24 \--gateway=192.168.1.1 \-o parent=eth0 my_macvlan_network
docker run -d --name container_name --network my_macvlan_network image_name

总结

根据具体的应用需求和网络拓扑,可以选择合适的 Docker 网络模式来配置和管理容器网络通信。

4o


http://www.ppmy.cn/news/1548529.html

相关文章

集群聊天服务器(7)数据模块

目录 Mysql数据库代码封装头文件与源文件 Mysql数据库代码封装 业务层代码不要直接写数据库,因为业务层和数据层的代码逻辑也想完全区分开。万一不想存储mysql,想存redis的话,就要改动大量业务代码。解耦合就是改起来很方便。 首先需要安装m…

Conda 安装纯净版ComfyUI

网上有很多整合包, 我个人喜欢纯净版, 自已搭建 1 拉代码 git clone https://github.com/comfyanonymous/ComfyUI 如果没有装过git,下载安装: https://git-scm.com/ https://git-lfs.com/ 2 创建环境 cd ComfyUI conda create -n ComfyUI python3.11…

【机器学习】机器学习中用到的高等数学知识-8. 图论 (Graph Theory)

图的表示和遍历:用于处理社交网络、推荐系统等结构化数据。 图论是研究图(Graph)结构的数学分支,在处理网络、关系和结构化数据时起着至关重要的作用。本文将从图的基本表示、遍历算法及其在实际应用中的使用展开讨论&#xff0c…

华为数字化转型的本质为何是管理变革

随着全球经济的加速数字化转型,企业纷纷进入了数字化时代的大潮。华为作为数字化转型的领军者,已经成功实践了从传统企业向数字化企业的蜕变。对于企业而言,数字化转型不仅仅是新技术的应用,更是一场管理变革。在这场变革的背后&a…

Bugku CTF_Web——字符?正则?

Bugku CTF_Web——字符&#xff1f;正则&#xff1f; 进入靶场 <?php highlight_file(2.php); $keyflag{********************************}; $IM preg_match("/key.*key.{4,7}key:\/.\/(.*key)[a-z][[:punct:]]/i", trim($_GET["id"]), $match); if…

基于yolov8、yolov5的植物类别识别系统(含UI界面、训练好的模型、Python代码、数据集)

项目介绍 项目中所用到的算法模型和数据集等信息如下&#xff1a; 算法模型&#xff1a;     yolov8、yolov8 SE注意力机制 或 yolov5、yolov5 SE注意力机制 &#xff0c; 直接提供最少两个训练好的模型。模型十分重要&#xff0c;因为有些同学的电脑没有 GPU&#xff0…

数字图像处理(c++ opencv):彩色图像处理-彩色基础与彩色模型

彩色图像基础 颜色特性&#xff1a;亮度、色调、饱和度 &#xff08;1&#xff09;亮度&#xff1a;即强度&#xff0c;如灰度值 &#xff08;2&#xff09;色调&#xff1a;混合光波中的主导光波属性&#xff0c;即被观察者感知的主导色。如描述一个物体为红色&#xff0c;就…

C函数从lua中读取数据接口常用接口

读取基本数据类型的接口 lua_tonumber和lua_tointeger 用途&#xff1a;用于从Lua栈中获取数字类型的数据。lua_tonumber用于获取浮点数&#xff0c;lua_tointeger用于获取整数。示例&#xff1a;假设在Lua中调用一个C函数并传入一个数字&#xff0c;在C函数中可以这样获取这个…