Docker容器技术实战3

news2024/11/26 14:26:43

8、docker原生网络

Docker原生网络基于Linux桥接技术和虚拟网络接口,使用了Linux内核的网络功能。每个Docker容器都有自己的网络命名空间,这使得容器之间可以使用独立的IP地址,并隔离了容器的网络栈。

当创建一个Docker原生网络时,Docker会在主机上创建一个Linux网桥(bridge),并将所有连接到该网络的容器连接到这个网桥上。每个容器都会分配一个唯一的IP地址,并可以通过该IP地址进行通信。此外,Docker还会为每个容器分配一个唯一的MAC地址,并通过一个虚拟网桥与主机网络相连

Docker原生网络可以使用不同的网络驱动程序,包括bridge、host、overlay等,以适应不同的场景需求。桥接网络(bridge network)是最常用的一种,它使得容器可以通过桥接连接到主机网络和其他容器。

查看原生网络

由于所有的容器都要桥接到docker0上,所以所有容器的数据包都要通过docker0向外发送,当容器数据包想要通过docker0对外发送时,要从eth0接口上走,因此内核的IP服务必须打开。

理解为一根网线,一头连接容器,一头连接本机

桥接模式可以允许数据包对外发送,但不可以外部主机直接访问

想让外部主机访问需要使用host网络模式(容器和宿主机共享同一网格线,不会新建虚拟网卡)

host网络模式,容器和宿主机共享一个网络栈,容器并没有创建新的虚拟网卡,同宿主机公用,因此其他主机想访问容器时,只需要访问它的接口地址就行

在server2上

注:当再运行一个容器时就会发生冲突

禁用网络模型

以上是三种原生网络

自定义网络

自定义网络地址段

当创建多个容器时,可以将它们连接到同一个Docker原生网络中,这样它们就可以通过IP地址进行互相访问。每个容器都会分配一个唯一的IP地址,并可以通过该IP地址进行通信。Docker会为每个容器自动添加DNS记录,以便容器名称之间的互相解析。所以多容器之间的互访是通过dns来进行访问,自定义网络内嵌了dns。

不同网络之间被隔离,默认不能通信;不同网络之间通信需要附加虚拟网卡。

再添加个虚拟网卡连接到不同的网段

9、docker容器通信

joined容器(两个容器共享一个网络栈)

在共享一个网络栈后,端口资源是唯一的

端口映射

双冗余机制

跨主机容器通信

两台虚拟机都各添加一块虚拟网卡,并重启

开启混杂模式并激活

server2上操作以此类推

要保证底层链路的正确,直接使用物理网卡,在创建macvlan的时候没有使用新建接口,不需要创建新的虚拟接口,直接使用eth1,也就是物理接口。

10、docker数据卷

在宿主机上修改数据相当于直接修改容器内的数据,因为当前宿主机的容器被直接挂载到容器内

清理所有数据卷,在清理前需要先删除容器,释放对数据卷的占用

创造数据卷

使用bind mount方式挂载数据卷

同时,在挂载时可以控制权限

共享卷

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Apache Flink 1.12.0 on Yarn(3.1.1) 所遇到的問題

Apache Flink 1.12.0 on Yarn(3.1.1) 所遇到的問題 新搭建的FLINK集群出现的问题汇总 1.新搭建的Flink集群和Hadoop集群无法正常启动Flink任务 查看这个提交任务的日志无法发现有用的错误信息。 进一步查看yarn日志: 发现只有JobManager的错误日志出现了如下的…

JOSEF约瑟 数显三相电压继电器 HJY-931A/D 导轨安装

名称:数字交流三相电压继电器型号:HJY-93系列品牌:JOSEF约瑟电压整定范围:10~450VAC额定电压:200、400VAC功率消耗:≤5W HJY系列 数字交流三相电压继电器 系列型号 HJY-931A/D数字式交流三相电压继电器&am…

吴恩达《机器学习》5-6:向量化

在深度学习和数值计算中,效率和性能是至关重要的。一个有效的方法是使用向量化技术,它可以显著提高计算速度,减少代码的复杂性。接下来将介绍向量化的概念以及如何在不同编程语言和工具中应用它,包括 Octave、MATLAB、Python、Num…

lvgl生成图片

网址:https://lvgl.io/tools/imageconverter CF_TRUE_COLOR:可以生成565,232,等多种形式的数组,选择Carray,会生成C数组。

2023.11.2事件纪念

然而造化又常常为庸人设计,以时间的流逝,来洗涤旧迹,仅以留下淡红的血色和微漠的悲哀。 回顾这次事件,最深的感触就是什么是团队的力量! 当我们看到希望快要成功的时候,大家洋溢出兴奋开心的表情,一起的欢声笑语;但看…

抖音群控软件的作用是什么?

随着智能手机的普及和社交媒体的兴起,抖音成为了人们日常生活中不可或缺的一部分,许多人都通过抖音平台分享自己的生活、展示才艺、开展商业活动等。 然而,要想在抖音上获得更多的关注和收益,需要投入大量的时间和精力&#xff0…

【C语言初学者周冲刺计划】3.2将一个数组中的值逆序重新存放

目录 1解题思路&#xff1a; 2代码 3运行代码如图&#xff1a; 4总结&#xff1a; 1解题思路&#xff1a; 首先学会如何利用循环输入位数和输入数值&#xff0c;然后再利用循环逆序即可 2代码 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() { int…

佳易王钟表铭表维修养护拍图留存查询手表保养跟踪记录系统软件下载

佳易王钟表铭表维修养护拍图留存查询手表保养跟踪记录系统软件下载 【软件试用版下载、软件资讯或技术支持服务可以点击文章最下方官网】 佳易王钟表养护维修管理系统V16.3&#xff0c;录入维修订单&#xff0c;维修进度查询&#xff0c;会员活动方案&#xff0c;打印服务报…

并发安全问题之--锁失效和锁边界问题

并发安全问题之–锁失效和锁边界问题 此处为新增insert无法在SQL中通过数量限制(除非插入SQL中有子查询)&#xff0c;上面改进的乐观锁失效&#xff08;前一节的乐观锁适合修改数据&#xff09; 故使用悲观锁&#xff0c;synchronized如果加在方法上范围是this是整个service&…

OSG多视口创建:osgViewer::CompositeViewer

1、效果 在osg的实际应用场景中&#xff0c;有时候需要同时创建多个场景视图&#xff0c;并保证各个场景视图中有不一样的显示和操作&#xff1a;例如&#xff1a;漫游器、照相机、粒子效果、多个模型组合等。此时就要用到OSG提供的osgViewer::CompositeViewer类来实现这个需求…

音乐推荐与管理系统Python+Django网页界面+协同过滤推荐算法

一、介绍 音乐推荐与管理系统。本系统采用Python作为主要开发语言&#xff0c;前端使用HTML、CSS、BootStrap等技术搭建界面平台&#xff0c;后端使用Django框架处理请求&#xff0c;并基于Ajax等技术实现前端与后端的数据通信。在音乐个性推荐功能模块中采用通过Python编写协…

Jmeter和Postman哪个做接口测试会更好

软件测试行业做功能测试和接口测试的人相对比较多。在测试工作中&#xff0c;有高手&#xff0c;自然也会有小白&#xff0c;但有一点我们无法否认&#xff0c;就是每一个高手都是从小白开始的&#xff0c;所以今天我们就来谈谈一大部分人在做的接口测试&#xff0c;小白变高手…

gcc -static 在centos stream8 和centos stream9中运行报错的解决办法

gcc -static 在centos stream8 和centos stream9中运行报错的解决办法&#xff1a; 报/usr/bin/ld: cannot find -lc 我们下载glibc-static&#xff1a; 选择x86_64的。 还有一个是libxcrypt-static&#xff0c;依旧在这个网站里搜。 rpm -ivh glibc-static-2.28-239.el8.x…

项目实战之理解代码一(vue.config.js)

文章目录 CDN 面经天天背&#xff0c;今天总算见到真的了。 OK&#xff0c;接下来让我们走进前端优化性能方式之一&#xff1a;CDN CDN CDN&#xff08;Content Delivery Network&#xff0c;内容分发网络&#xff09;是用于存储和传输静态资源&#xff08;如 JavaScript、CSS…

如何为一个Type类赋值

如何为一个Type类赋值 前言案例准备一、简单赋值 前言 今天我在写代码的时候遇到一个神奇的类——Type,虽然说我们都心知肚明这个类代表着什么&#xff08;字面意思嘛&#xff0c;很好理解&#xff09;&#xff0c;但是实操起来却无从下手&#xff0c;就如何对Type类进行赋值&…

基于 golang 从零到一实现时间轮算法 (二)

Go实现单机版时间轮 上一章介绍了时间轮的相关概念&#xff0c;接下来我们会使用 golang 标准库的定时器工具 time ticker 结合环状数组的设计思路&#xff0c;实现一个单机版的单级时间轮。 首先我们先运行一下下面的源码&#xff0c;看一下如何使用。 https://github.com/x…

一招优化百度网盘下载速度,不开会员也能提高几十倍倍下载速度

​ 百度网盘&#xff08;原百度云&#xff09;是百度推出的一项云存储服务&#xff0c;已覆盖主流PC和手机操作系统&#xff0c;包含Web版、Windows版、Mac版、Android版、Linux信创版、青春版、TV版、iPhone版和iPad版&#xff0c;并覆盖了主流联网车和非联网车。 用…

2023年山东省安全员C证证模拟考试题库及山东省安全员C证理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年山东省安全员C证证模拟考试题库及山东省安全员C证理论考试试题是由安全生产模拟考试一点通提供&#xff0c;山东省安全员C证证模拟考试题库是根据山东省安全员C证最新版教材&#xff0c;山东省安全员C证大纲整理…

Python 异常处理:try、except、else 和 finally 的使用指南

异常处理 当发生错误&#xff08;或我们称之为异常&#xff09;时&#xff0c;Python 通常会停止执行并生成错误消息。 try 块用于测试一段代码是否存在错误。 except 块用于处理错误。 else 块用于在没有错误时执行代码。 finally 块用于无论 try 和 except 块的结果如何…

vivado生成bit流错误---[DRC UCIO-1]

拿着开发板的例程&#xff0c;只修改了FPGA芯片&#xff0c;FPGA芯片是同一系列的。运行编译产生bit流出现如下错误 [DRC UCIO-1] Unconstrained Logical Port: 20 out of 22 logical ports have no user assigned specific location constraint (LOC). This may cause I/O con…