所以docker run的时候只需要加入指定的network,就会从该network自动分配对应的ip是吗

是的,你的理解完全正确!

Docker 网络自动分配 IP 机制

当你使用 docker run 命令并指定网络时,Docker 会自动从该网络的子网中分配一个 IP 地址给容器。

基本用法:

# 使用默认 bridge 网络(自动分配 172.17.0.0/16 网段的 IP)
docker run --network=bridge your-image# 使用自定义网络(自动分配该网络子网内的 IP)
docker run --network=mynetwork your-image# 使用 host 网络(不分配独立 IP,直接使用宿主机网络)
docker run --network=host your-image

示例演示:

  1. 创建自定义网络
docker network create --subnet=192.168.100.0/24 mynetwork
  1. 运行容器
docker run -d --network=mynetwork --name container1 nginx
docker run -d --network=mynetwork --name container2 nginx
  1. 查看分配的 IP
docker inspect container1 | grep IPAddress
# 输出可能是: "IPAddress": "192.168.100.2"docker inspect container2 | grep IPAddress
# 输出可能是: "IPAddress": "192.168.100.3"

IP 分配规则:

  1. 自动分配:Docker 会从网络的子网范围内自动选择可用的 IP
  2. 网关地址:通常网关地址(如 192.168.100.1)不会被分配给容器
  3. 顺序分配:一般按顺序分配,但不保证严格的顺序
  4. 避免冲突:Docker 会确保不分配已被使用的 IP

验证机制:

# 查看网络中的所有容器和它们的 IP
docker network inspect mynetwork# 输出会显示类似:
"Containers": {"container1_id": {"IPv4Address": "192.168.100.2/24","IPv6Address": "","MacAddress": "02:42:c0:a8:64:02"},"container2_id": {"IPv4Address": "192.168.100.3/24", "IPv6Address": "","MacAddress": "02:42:c0:a8:64:03"}
}

注意事项:

  1. 网络必须存在:指定的网络需要预先创建
  2. IP 范围限制:IP 地址只能在该网络定义的子网范围内
  3. 动态分配:除非使用 --ip 参数固定 IP,否则每次运行都可能获得不同 IP

所以你的理解是对的:只需要指定网络,Docker 就会自动处理 IP 分配。

如果制定host,docker就没有独立的ip对吗

是的,完全正确!

Host 网络模式的特点

当你使用 --network=host 参数时,Docker 容器不会获得独立的 IP 地址,而是直接使用宿主机的网络命名空间。

对比说明:

1. Bridge 模式(默认)
docker run --network=bridge your-image
# 容器获得独立 IP,如 172.17.0.2
2. Host 模式
docker run --network=host your-image
# 容器直接使用宿主机网络,没有独立 IP

Host 模式的特点:

  1. 共享网络命名空间

    • 容器直接使用宿主机的网络接口
    • 没有网络隔离
    • 没有独立的 IP 地址
  2. 端口直接映射

    • 容器内应用监听的端口直接绑定到宿主机
    • 不需要 -p 端口映射参数
    • 端口冲突检查在宿主机级别进行
  3. 网络性能

    • 网络性能最佳(无 NAT 开销)
    • 延迟最低

实际效果:

# 使用 host 网络运行容器
docker run -d --network=host --name myapp nginx# 容器内应用监听 80 端口,直接在宿主机 80 端口可访问
# 不需要 docker run -p 80:80 ...# 查看容器网络信息
docker inspect myapp | grep IPAddress
# 输出会是空或者显示宿主机 IP

适用场景:

  1. 高性能网络需求

    • 对网络延迟敏感的应用
    • 需要大量网络连接的应用
  2. 端口较多的服务

    • 避免复杂的端口映射配置
    • 动态端口分配的服务
  3. 网络调试

    • 更容易进行网络问题排查

注意事项:

  1. 端口冲突:容器端口直接占用宿主机端口
  2. 安全性降低:没有网络隔离
  3. 平台限制:在 Docker Desktop for Mac/Windows 上行为可能不同

所以你的理解完全正确:使用 host 网络模式时,容器没有独立的 IP 地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/95425.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/95425.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/95425.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GPT-5 现已上线 DigitalOcean Gradient™ AI 平台!

OpenAI 于 8 月 7 日发布其最新人工智能模型 GPT-5。根据 OpenAI 介绍,GPT-5 在编程、数学、写作、视觉等方面的性能全面领先,幻觉更低,指令更准。新架构整合高速模型与深度推理,可实时切换速答或深思。近日,DigitalOc…

#C语言——学习攻略:自定义类型路线--结构体--结构体类型,结构体变量的创建和初始化,结构体内存对齐,结构体传参,结构体实现位段

🌟菜鸟主页:晨非辰的主页 👀学习专栏:《C语言学习》 💪学习阶段:C语言方向初学者 ⏳名言欣赏:“人理解迭代,神理解递归。” 目录 1. 结构体类型 1.1 旧知识回顾 1.1.1 结构体声…

机器学习——TF-IDF算法

TF-IDF(Term Frequency-Inverse Document Frequency)是一种广泛应用于文本挖掘和信息检索领域的经典加权算法,主要用于评估一个词语在文档集合中的重要程度。其核心思想是:一个词语在文档中出现的频率越高,同时在所有文…

区块链技术原理(9)-什么是以太币

文章目录前言什么是加密货币?什么是以太币(ETH)铸造 ETH燃烧 ETHETH 面额传输 ETH查询 ETH以太币的经济模型:发行与流通以太币与其他代币的区别以太币的历史与市场地位总结前言 以太币(Ether,简称 ETH&…

【Oracle APEX开发小技巧16】交互式网格操作内容根据是否启用进行隐藏/展示

在日常开发中,有想要根据某一状态或条件去限制/隐藏对应权限或操作按钮的情况,于是用简报模板列表进行展示,并提供以下功能:显示模板基本信息提供启用/禁用模板的开关提供编辑模板的入口根据模板状态显示不同的操作选项效果展示&a…

AIStarter:全网唯一跨平台桌面AI管理工具,支持Windows、Mac和Linux一键部署

AIStarter作为全网唯一支持Windows、Mac和Linux的桌面AI管理平台,为开发者提供高效的项目管理、模型插件和工作流共享体验。最近,熊哥发布了4.1.0版本更新视频,详细演示了如何在多平台上安装、使用和分享AI项目。本文基于视频内容&#xff0c…

AP模式/ESP32作为TCP服务端,转发串口接收的数据给网络调试助手

此代码为接收STM32的数据然后直接转发到网络调试助手,当有设备连接到esp32软件热点时会通过串口发送字符’a’给STM32,当有设备断开连接时会通过串口发送字符’b’,ESP32的TX:GPIO4, RX:GPIO5ESP32作为TCP服务器地址为192.168.4.1 监听端口为3333#include <string.h> #in…

kafka 中的Broker 是什么?它在集群中起什么作用?

Kafka中的Broker&#xff1a;集群的核心支柱 在分布式消息系统Apache Kafka中&#xff0c;Broker是构成Kafka集群的核心节点或服务器。 简单来说&#xff0c;每一个Broker就是运行着Kafka服务的一个实例&#xff0c;多台Broker共同协作&#xff0c;形成了强大的、可扩展的消息处…

【SOA用于噪声抑制】光纤DFB激光器中弛豫振荡噪声抑制

概述&#xff1a;本章记录了我们在光纤分布式反馈DFB激光器中使用饱和SOA来降低RIN的工作&#xff0c;以用于低频传感器应用。结果表明&#xff0c;放大器的增益动力学允许光纤激光器的弛豫振荡RO噪声分量减少30dB。 1 背景到目前为止&#xff0c;我研究了将饱和半导体光放大器…

神经网络的核心组件解析:从理论到实践

神经网络作为深度学习的核心技术&#xff0c;其复杂性常常令人望而却步。然而&#xff0c;尽管神经网络的结构、参数和计算过程看似繁琐&#xff0c;但其核心组件却是相对简洁且易于理解的。本文将深入探讨神经网络的四大核心组件——层、模型、损失函数与优化器&#xff0c;并…

Spring Boot项目通过Feign调用三方接口的详细教程

目录 一、环境准备 二、启用Feign客户端 三、定义Feign客户端接口 四、定义请求/响应DTO 五、调用Feign客户端 六、高级配置 1. 添加请求头&#xff08;如认证&#xff09; 2. 超时配置&#xff08;application.yml&#xff09; 3. 日志配置 七、错误处理 自定义错误…

ubuntu24.04安装 bpftool 以及生成 vmlinux.h 文件

文章目录前言一、apt安装二、源码安装三、生成vmlinux.h参考资料前言 $ cat /etc/os-release PRETTY_NAME"Ubuntu 24.04.2 LTS"$ uname -r 6.14.0-27-generic一、apt安装 安装bpftool&#xff1a; $ sudo apt install linux-tools-commonThe following NEW packa…

Pytorch FSDP权重分片保存与合并

注&#xff1a;本文章方法只适用Pytorch FSDP1的模型&#xff0c;且切分策略为SHARDED_STATE_DICT场景。 在使用FSDP训练模型时&#xff0c;为了节省显存通常会把模型权重也进行切分&#xff0c;在保存权重时为了加速保存通常每个进程各自保存自己持有的部分权重&#xff0c;避…

IDEA自动生成Mapper、XML和实体文件

1. 引入插件 <build><finalName>demo</finalName><plugins><plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.5</version><depe…

单例模式的理解

目录单例模式1.饿汉式(线程安全)2.懒汉式(通过synchronized修饰获取实例的方法保证线程安全)3.双重校验锁的方式实现单例模式4.静态内部类方式实现单例模式【推荐】单例模式 1.饿汉式(线程安全) package 并发的例子.单例模式; // 饿汉式单例模式&#xff08;天然线程安全&…

NLP---IF-IDF案例分析

一案例 - 红楼梦1首先准备语料库http://www.dxsxs.com这个网址去下载2 任务一&#xff1a;拆分提取import os import redef split_hongloumeng():# 1. 配置路径&#xff08;关键&#xff1a;根据实际文件位置修改&#xff09; # 脚本所在文件夹&#xff08;自动获取&#xff0…

LaTeX(排版系统)Texlive(环境)Vscode(编辑器)环境配置与安装

LaTeX、Texlive 和 Vscode 三者之间的关系&#xff0c;可以把它们理解成语言、工具链和编辑器的配合关系。 1.下载Texlive 华为镜像网站下载 小编这边下载的是texlive2025.iso最新版的&#xff0c;下载什么版本看自己需求&#xff0c;只要下载后缀未.iso的即可。为避免错误&am…

【深入浅出STM32(1)】 GPIO 深度解析:引脚特性、工作模式、速度选型及上下拉电阻详解

GPIO 深度解析&#xff1a;引脚特性、工作模式、速度选型及上下拉电阻详解一、GPIO概述二、GPIO的工作模式1、简述&#xff08;1&#xff09;4种输入模式&#xff08;2&#xff09;4种输出模式&#xff08;3&#xff09;4种最大输出速度2、引脚速度&#xff08;1&#xff09;输…

第1节 大模型分布式推理基础与技术体系

前言:为什么分布式推理是大模型时代的核心能力? 当我们谈论大模型时,往往首先想到的是训练阶段的千亿参数、千卡集群和数月的训练周期。但对于商业落地而言,推理阶段的技术挑战可能比训练更复杂。 2025年,某头部AI公司推出的130B参数模型在单机推理时面临两个选择:要么…

《软件工程导论》实验报告一 软件工程文档

目 录 一、实验目的 二、实验环境 三、实验内容与步骤 四、实验心得 一、实验目的 1. 理解软件工程的基本概念&#xff0c;熟悉软件&#xff0c;软件生命周期&#xff0c;软件生存周期过程和软件生命周期各阶段的定义和内容。 2. 了解软件工程文档的类别、内容及撰写软件工…