docker详解

简介: docker详解

 基本架构

Docker采用了标准的C/S架构,包括客户端和服务端两大部分。客户端和服务端既可以运行在一个机器上, 也可通过socket或者RESTful API来进行容器通信

服务端

Docker daemon一般在宿主主机后台运行,作为服务端接受来自客户的请求, 并处 Docker基本架构理这些请求(创建、运行、分发容器)。在设计上,Docker daemon是一个非常松耦合的架构,通过专门的 Engine模块来分发管理各个来自客户端的任务

客户端

Docker客户端则为用户提供一系列可执行命令,用户用这些命令实现与Docker daemon的交互

sudo docker version
          sudo docker -H tcp://127.0.0.1:1234

image.gif

联合文件系统

联合文件系统(UnionFS)是一种轻量级的高性能分层文件系统,它支持将文件系统中的修改信息作为一次提交, 并层层叠加,同时可以将不同目录挂载到同一个虚拟文件系统下。

Dockerfile

描述镜像的生成规则。Dockerfile中的每一条命令,都在Docker镜像中以一个独立镜像层的形式存在

Image

由Dockerfile生成,呈现层级结构,每层镜像包含:镜像文件以及镜像json元数据信息

Container

是Image的动态运行结果,概括而言,就是在Docker镜像之上,运行进程

镜像分层以及减少镜像的层数的好处

1基本上每个软件都是基于某个镜像去运行的,因此一旦某个底层环境出了问题,就不需要去修改全部基于该镜像的软件的镜像,只需要修改底层环境的镜像。

2这个好处也是最大好处,就是可以共享资源,其他相同环境的软件镜像都共同去享用同一个环境镜像,而不需要每个软件镜像要去创建一个底层环境。

3可以复用,节省磁盘空间,相同的内容只需加载一份到内存。 修改dockerfile之后,再次构建速度快。


相关文章
|
Java 应用服务中间件 微服务
信创迁移适配实战-SpringBoot项目打包war部署至TongWeb7
信创迁移适配实战-SpringBoot项目打包war部署至TongWeb7
4174 0
信创迁移适配实战-SpringBoot项目打包war部署至TongWeb7
|
7月前
|
自然语言处理 算法 机器人
2025年热门智能客服机器人评测:哪款更好用?
2025年,智能客服机器人市场竞争激烈,功能日益强大。主要品牌如合力亿捷、阿里云、华为云、京东京小智和小米商城等纷纷推出具备精准语音识别、语义理解、多渠道接入等功能的产品,广泛应用于电商、金融、零售等领域,显著提升客服效率与客户满意度,降低企业运营成本。
443 0
|
12月前
|
JavaScript
Vue3基础(四)___Vue-Router
本文介绍了在Vue 3中如何使用`vue-router@4`进行路由管理,包括安装路由库、定义路由配置、在组件中使用`useRouter`和`useRoute`钩子函数,以及如何在组件中进行路由跳转和获取路由参数。
163 1
Vue3基础(四)___Vue-Router
|
11月前
|
人工智能 语音技术 UED
仅用4块GPU、不到3天训练出开源版GPT-4o,这是国内团队最新研究
【10月更文挑战第19天】中国科学院计算技术研究所提出了一种名为LLaMA-Omni的新型模型架构,实现与大型语言模型(LLMs)的低延迟、高质量语音交互。该模型集成了预训练的语音编码器、语音适配器、LLM和流式语音解码器,能够在不进行语音转录的情况下直接生成文本和语音响应,显著提升了用户体验。实验结果显示,LLaMA-Omni的响应延迟低至226ms,具有创新性和实用性。
390 1
|
10月前
|
存储 监控 安全
docker可能存在的问题有哪些?
【10月更文挑战第28天】docker可能存在的问题有哪些?
425 0
【Python-Numpy】numpy.expand_dims()的解析与使用
np.expand_dims()函数的作用,它用于在指定位置插入新轴,扩展数组的维度。
219 2
【Azure Developer】CURL 发送Oauth2 Token请求获取到 404 Not Found 问题
【Azure Developer】CURL 发送Oauth2 Token请求获取到 404 Not Found 问题
168 0
|
前端开发 JavaScript 测试技术
如何在Vue3项目中集成ESLint+Prettier+Stylelint+Husky?
如何在Vue3项目中集成ESLint+Prettier+Stylelint+Husky?
771 0
|
存储 SQL NoSQL
【MongoDB】如何区分MongoDB和关系型数据库?
【4月更文挑战第1天】【MongoDB】如何区分MongoDB和关系型数据库?
|
缓存 前端开发 JavaScript
NPM进阶知识与用法详解(二)
NPM进阶知识与用法详解(二)
235 0