Docker - 哲学 默认网络和 自定义网络 与 linux 网络类型 和 overlay2

2024-03-24 15:44

本文主要是介绍Docker - 哲学 默认网络和 自定义网络 与 linux 网络类型 和 overlay2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

默认网络:不指定 --nerwork 

不指定 网络 run 一个容器时,会直接使用默认的网络桥接器 (docker0)

自定义网络:指定 --nerwork  

让这两台容器互相通信 的前提 - 共享同一个网络 

关于 ip addr 显示 ens160

储存驱动 overlay != 网络驱动 overlay

我本地地址为 192.168.2.218 百度ip为  110.242.68.66,那么为什么 192.168.2.218 可以 ping 通 百度的 ip: 110.242.68.66 。他们并不在同一个网段 ,docker里面 不同的 网段的网络无法进行通信

Docker容器的网络和你的物理网络是隔离的。每个Docker容器都在自己的网络命名空间中运行,这意味着它们有自己的网络栈,包括自己的路由表。这就是为什么在Docker网络中,不同网络段的容器不能直接通信。

然而,你的物理机器(在这个例子中是你的Mac)是连接到一个路由器的,这个路由器知道如何将你的数据包路由到互联网上的其他网络。这就是为什么你的Mac可以ping通百度的IP地址,即使它们不在同一个网络段。

如果你想让Docker容器能够访问互联网,或者让不同网络的Docker容器能够通信,你有几个选项:

  1. 使用host网络模式:这将使容器共享主机的网络命名空间,但是这种模式下的容器不能使用Docker的端口映射功能。

  2. 使用bridge网络模式并手动配置端口映射:这将允许容器访问互联网,并且可以使用Docker的端口映射功能。

  3. 使用overlay网络:如果你在使用Docker Swarm,你可以创建一个overlay网络,这将允许不同主机上的容器互相通信。

  4. 使用第三方网络插件:有许多第三方Docker网络插件可以提供更复杂的网络功能。

查看容器的 网络信息

docker  exec -it myContainer  sh  cat /etc/hosts

这篇关于Docker - 哲学 默认网络和 自定义网络 与 linux 网络类型 和 overlay2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/842043

相关文章

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

解读docker运行时-itd参数是什么意思

《解读docker运行时-itd参数是什么意思》在Docker中,-itd参数组合用于在后台运行一个交互式容器,同时保持标准输入和分配伪终端,这种方式适合需要在后台运行容器并保持交互能力的场景... 目录docker运行时-itd参数是什么意思1. -i(或 --interactive)2. -t(或 --

linux打包解压命令方式

《linux打包解压命令方式》文章介绍了Linux系统中常用的打包和解压命令,包括tar和zip,使用tar命令可以创建和解压tar格式的归档文件,使用zip命令可以创建和解压zip格式的压缩文件,每... 目录Lijavascriptnux 打包和解压命令打包命令解压命令总结linux 打包和解压命令打

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

linux如何复制文件夹并重命名

《linux如何复制文件夹并重命名》在Linux系统中,复制文件夹并重命名可以通过使用“cp”和“mv”命令来实现,使用“cp-r”命令可以递归复制整个文件夹及其子文件夹和文件,而使用“mv”命令可以... 目录linux复制文件夹并重命名我们需要使用“cp”命令来复制文件夹我们还可以结合使用“mv”命令总

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,

Linux使用cut进行文本提取的操作方法

《Linux使用cut进行文本提取的操作方法》Linux中的cut命令是一个命令行实用程序,用于从文件或标准输入中提取文本行的部分,本文给大家介绍了Linux使用cut进行文本提取的操作方法,文中有详... 目录简介基础语法常用选项范围选择示例用法-f:字段选择-d:分隔符-c:字符选择-b:字节选择--c

Rust中的BoxT之堆上的数据与递归类型详解

《Rust中的BoxT之堆上的数据与递归类型详解》本文介绍了Rust中的BoxT类型,包括其在堆与栈之间的内存分配,性能优势,以及如何利用BoxT来实现递归类型和处理大小未知类型,通过BoxT,Rus... 目录1. Box<T> 的基础知识1.1 堆与栈的分工1.2 性能优势2.1 递归类型的问题2.2

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署