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

docker有哪些网络模式

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

1. Bridge 网络(默认)

  • 描述:在这种模式下,Docker 创建了一个桥接网络(bridge),所有容器连接到这个网络并通过虚拟网桥进行通信。
  • 特点
    • 默认网络模式,适用于单机容器通信。
    • 容器通过桥接网络可以相互通信。
    • 每个容器都有一个虚拟网卡(veth)连接到桥接网络。
  • 用法
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 地址,使其在物理网络中像普通设备一样。
  • 特点
    • 容器可以直接与物理网络设备通信。
    • 适用于需要容器拥有独立 IP 地址的场景。
    • 容器可以通过网络交换机进行网络隔离。
  • 用法
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

总结

  • Bridge 网络:适用于单机容器通信。
  • Host 网络:适用于需要高性能网络通信的场景。
  • None 网络:适用于完全自定义网络配置。
  • Container 网络:适用于多个容器共享网络配置。
  • Overlay 网络:适用于跨多主机的容器通信(Swarm/Kubernetes)。
  • Macvlan 网络:适用于容器直接连接到物理网络并拥有独立 IP 地址的场景。

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

4o

相关文章:

docker有哪些网络模式

Docker 提供了多种网络模式(Networking Modes),每种模式都有其特定的用例和优缺点。以下是 Docker 的几种主要网络模式: 1. Bridge 网络(默认) 描述:在这种模式下,Docker 创建了一…...

npoi 如何设置单元格为文本类型

ICellStyle style workbook.CreateCellStyle(); var font workbook.CreateFont(); font.FontHeightInPoints 10; //font.FontName "Arial"; font.FontName "仿宋"; style.Alignment NP…...

Vue3、Vite5、Primevue、Oxlint、Husky9 简单快速搭建最新的Web项目模板

Vue3、Vite5、Oxlint、Husky9 简单搭建最新的Web项目模板 特色进入正题创建基础模板配置API自动化导入配置组件自动化导入配置UnoCss接入Primevue接入VueRouter4配置项目全局环境变量 封装Axios接入Pinia状态管理接入Prerttier OXLint ESLint接入 husky lint-staged&#xf…...

DataStream编程模型之数据源、数据转换、数据输出

Flink之DataStream数据源、数据转换、数据输出(scala) 0.前言–数据源 在进行数据转换之前,需要进行数据读取。 数据读取分为4大部分: (1)内置数据源; 又分为文件数据源; socket…...

海康IPC接入TRTC时,从海康中获取的数据显示时色差不正确

2021/1 记录海康IPC接入TRTC时的历史日志 从海康sdk接口获取数据,进行解码 org.MediaPlayer.PlayM4.Player.T_YV12;private void setDecodeCB() {Player.getInstance().setDecodeCB(m_iPort, (nPort, data, nDataLen, nWidth, nHeight, nFrameTime, nDataType,…...

『VUE』31. 生命周期的应用(详细图文注释)

目录 在合适的时间进行操作取dom元素利用生命周期模拟网络数据发送代码示例 总结 欢迎关注 『VUE』 专栏,持续更新中 欢迎关注 『VUE』 专栏,持续更新中 在合适的时间进行操作 假设网页一颗果树,我们要取dom(果实),一定要在渲染完成后才能取(果实) 通常…...

Mybatis框架之建造者模式 (Builder Pattern)

MyBatis 框架中大量使用了 建造者模式 (Builder Pattern) 来构建复杂的对象,尤其是在 SQL 语句的解析、配置对象的创建以及动态 SQL 的生成 等方面。建造者模式使得 MyBatis 能够更灵活、清晰地构建对象,尤其是那些需要多步创建和配置的复杂对象。 1. 什…...

Java从入门到精通笔记篇(十三)

与流处理 ambda表达式 定义 lambda表达式不能被独立执行,因此必须实现函数式接口,并且会返回一个函数式接口的对象。 可将其语法用下列的方式理解 误区警示 “->”符号是由英文状态下的“-”和“>”组成的,符号之间没有空格。 lambd…...

嵌入式:STM32的启动(Startup)文件解析

相关阅读 嵌入式https://blog.csdn.net/weixin_45791458/category_12768532.html?spm1001.2014.3001.5482 启动文件(Startup File)是嵌入式系统开发中的核心组件之一,它用于初始化系统并为主程序的运行做好准备。在大多数情况下,启动文件是用汇编语言编…...

ElasticSearch学习笔记四:基础操作(二)

一、前言 上一篇文章中我们学习了ES中的基础操作,包括索引和映射,同时也学习了ES中的基础数据类型,今天我们继续学习其他的数据类型。 二、复杂数据类型 1、数组(Array) 在ES中没有特别指定数据类型,换…...

ODA-em-application.log太大处理

检查oda时发现u01使用率很高,层层排查到是em-application.log文件太大 orcl2:/u01/app/oracle/product/11.2.0.4/dbhome_1/oc4j/j2ee/OC4J_DBConsole_oda1_orcl/logoda1>du -sh * 57G em-application.log 2.2M global-application.log 92M …...

基于现金红包营销活动的开源 AI 智能名片与 S2B2C 商城小程序融合发展研究

摘要:本文深入剖析现金红包这一平台补贴的营销利器在消费场景中的多元应用,并将其与开源 AI 智能名片、S2B2C 商城小程序相融合,探讨其中蕴含的创新模式与商业价值。通过详尽解析各类现金红包的使用条件,阐述如何巧妙运用这些营销…...

远程管理不再难!树莓派5安装Raspberry Pi OS并实现使用VNC异地连接

前言:大家好!今天我要教你们如何在树莓派5上安装Raspberry Pi OS,并配置SSH和VNC权限。通过这些步骤,你将能够在Windows电脑上使用VNC Viewer,结合Cpolar内网穿透工具,实现长期的公网远程访问管理本地树莓派…...

React中 setState 是同步的还是异步的?调和阶段 setState 干了什么?

React中 setState 是同步的还是异步的 1. React 的 setState 是异步的2. 为什么 setState 在合成事件和生命周期函数中是异步的3. 为什么 setState 在原生事件和定时器中是同步的4. 为什么要这样设计?调和阶段是什么setState在调和阶段干了什么?总结&…...

【D3.js in Action 3 精译_040】4.4 D3 弧形图的绘制方法

当前内容所在位置: 第四章 直线、曲线与弧线的绘制 ✔️ 4.1 坐标轴的创建(上篇) 4.1.1 D3 中的边距约定(中篇)4.1.2 坐标轴的生成(中篇) 4.1.2.1 比例尺的声明(中篇)4.1…...

C++设计模式:抽象工厂模式(风格切换案例)

抽象工厂模式(Abstract Factory)是一种创建型设计模式,其核心思想是:为一组相关或相互依赖的对象提供一个创建接口,而无需指定它们具体的类。简单来说,就是一个工厂可以生产一系列相关的对象。 我们接下来…...

搜维尔科技:Xsens随时随地捕捉,在任何环境下实时录制或捕捉

Xsens随时随地捕捉,在任何环境下实时录制或捕捉 搜维尔科技:Xsens随时随地捕捉,在任何环境下实时录制或捕捉...

爬虫基础总结 —— 附带爬取案例

Crawler —— Learning experience 数据的传输: 在OSI七层模型中,传输层为源主机和目标主机之间提供可靠的数据传输和通信服务,在该层中,有两个重要的协议—— TCP与 UDP协议。 TCP协议(传输控制协议) …...

图像处理学习笔记-20241118

文章目录 霍夫变换基本原理霍夫变换的步骤使用 OpenCV 实现直线检测示例:标准霍夫变换 示例:概率霍夫变换参数解释霍夫变换检测圆 基于GAN的样本生成GAN的基本原理基于GAN的数据增广流程实现代码示例 同态滤波(Homomorphic Filtering&#xf…...

不能打开网页,但能打开QQ、微信(三种方式)

1.VPN错误 下面三个开关全关闭 2.DNS问题 WINR 输入CMD打开命令行 命令行输入 ipconfig/flushdns 重启电脑 3.直接火绒(一键修复)...

终极Windows热键侦探指南:3分钟解决快捷键冲突难题

终极Windows热键侦探指南:3分钟解决快捷键冲突难题 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是否曾经遇…...

软考高项备考重点考点18:项目绩效域

一、历年真题分布 2023年5月 选择题3分 2023年11月 选择题3分 案例5分第1批,15分第3批,5分第4批 论文 75分 第2批 2024年5月 选择题3分 案例10分 第2批 2025年5月 选择题2分 论文 75分 第1批、第2批 二、备考重点…...

GPU流水线设计:提升深度学习计算效率的关键技术

1. GPU流水线设计基础概念现代GPU架构为深度学习工作负载提供了强大的并行计算能力,但传统的批量同步并行(BSP)执行模型存在资源利用率低下的问题。GPU流水线技术通过将计算图分解为多个阶段并在其间插入队列节点,实现了计算与通信的重叠执行。1.1 传统B…...

别再只用GitHub了!手把手教你用GitLab搭建团队专属代码仓库(从群组到项目实战)

别再只用GitHub了!手把手教你用GitLab搭建团队专属代码仓库(从群组到项目实战) 在开源生态中,GitHub无疑是代码托管平台的代名词。但对于需要私有化部署和精细权限控制的团队而言,GitLab提供了更完整的DevOps解决方案。…...

ARM AMU与PMU架构详解及性能监控实践

1. ARM AMU与PMU架构概述在现代ARM处理器架构中,活动监控单元(AMU)和性能监控单元(PMU)是系统级性能分析的核心组件。作为芯片设计工程师,我经常需要与这些硬件监控模块打交道。AMU主要负责处理器内部活动的监控和统计,而PMU则提供更通用的性…...

Python 爬虫数据处理:重复页面数据智能合并去重

前言 在规模化 Python 爬虫采集项目中,重复页面数据是高频出现的核心问题,源于站点分页逻辑错乱、镜像页面分发、动态接口返回冗余数据、多入口同源页面采集等多重因素。重复数据若不做处理,不仅会造成数据库存储冗余、占用服务器资源&#…...

NotebookLM未公开的Obsidian插件桥接协议(内部文档泄露版),仅限前500名技术决策者获取

更多请点击: https://intelliparadigm.com 第一章:NotebookLM与Obsidian整合的架构全景图 NotebookLM(Google 推出的 AI 原生研究助手)与 Obsidian(本地优先、双向链接的知识图谱工具)的整合,正…...

基于Next.js 15与React 19构建现代化个人作品集:技术选型与工程实践

1. 项目概述:为什么选择 Next.js 15 构建现代个人作品集 作为一名在前后端领域摸爬滚打了十多年的开发者,我见过也亲手搭建过无数种个人作品集网站。从早期的纯静态 HTML/CSS,到 jQuery 时代,再到 React/Vue 等框架的兴起&#x…...

Cap框架解析:模块化开发者工具箱的设计哲学与核心实践

1. 项目概述:一个面向开发者的现代化软件工具箱最近在GitHub上看到一个挺有意思的项目,叫“CapSoftware/Cap”。乍一看这个名字,可能会联想到“Cap”这个英文单词的多种含义——帽子、上限、或者电容的单位。但在软件开发的语境里&#xff0c…...

AI赋能二进制安全:BinAIVulHunter项目实战与逆向工程集成

1. 项目概述与核心价值最近在安全圈里,一个名为BinAIVulHunter的开源项目引起了我的注意。这个项目名直译过来就是“二进制AI漏洞猎人”,光看名字就能猜到它的核心玩法:利用人工智能技术,来自动化分析二进制文件,挖掘其…...