lxc的内存、网络、磁盘的监控管理(一)

Docker的graphdriver

Docker的网络配置 6 docker-proxy

1. 引言

本文主要按照以下三个部分进行:

·Docker的总架构图。
·Docker架构内部各模块功能与实现的分析。
·通过具体的Docker命令,阐述Docker的运行流程。

2.Docker总架构图

Docker对用户而言是一个简单的C/S架构,用户通过客户端与服务器端建立通信,而Docker的后端是一个松耦合的架构,架构中的模块各司其职、有机组合,支撑着Docker运行。

架构中主要的模块有:DockerClient、DockerDaemon、Docker Registry、Graph、Driver、libcontainer以及Docker Container。

对用户而言,Docker Client是与Docker Daemon建立通信的最佳途径。用户通过Docker Client发起容器的管理请求,请求最终发往Docker Daemon。

Docker Daemon作为Docker架构中的主体部分,首先具备服务端的功能,有能力接收Docker Client发起的请求;其次具备Docker Client请求的处理能力。Docker Daemon内部所有的任务均由Engine来完成,且每一项工作都以一个Job的形式存在。

Docker Daemon需要完成的任务很多,因此Job的种类也很多。若用户需要下载容器镜像,Docker Daemon则会创建一个名为“pull”的Job,运行时从Docker Registry中下载镜像,并通过镜像管理驱动graphdriver将下载的镜像存储在graph中;若用户需要为Docker容器创建网络环境,Docker Daemon则会创建一个名“allocate_interface”的Job,通过网络驱动networkdriver分配网络接口的资源……

libcontainer是一套独立的容器管理解决方案,这套解决方案涉及了大量Linux内核方面的特性,如:namespaces、cgroups以及capabilities等。libcontainer很好地抽象了Linux的内核特性,并提供完整、明确的接口给Docker Daemon。

当用户执行运行容器这个命令之后,一个Docker容器就处于运行状态,该容器拥有隔离的运行环境、独立的网络栈资源以及受限的资源等。

Docker原理学习(1) Docker架构相关推荐

  1. 《深入浅出Docker》学习笔记

    <深入浅出Docker>学习笔记 第三章:docker 安装 linux服务器安装:-略 windows服务器安装:-略 确认安装结果 docker --version 第四章:纵观DOc ...

  2. Android架构——ViewModel原理学习总结

    本文是楼主学习ViewModel 源码的一些总结,感觉ViewModel的源码是Android 三大架构中 最容易理解的一个了.本文ViewModel基于版本androidx.lifecycle:li ...

  3. Docker入门级学习简记

    Docker入门级学习简记 Docker简记 Docker是用来安装应用的容器,是开源,支持跨平台的 Docker思想:集装箱,标准化(运输方式,存储方式,API接口),隔离 Docker解决的问题: ...

  4. Docker镜像原理学习理解

    Docker镜像原理学习理解 一.Docker镜像的组成 1.Docker镜像图层 2.union file system 3.镜像层-bootfs 4.镜像层-rootfs 5.镜像层-依赖环境 6 ...

  5. docker tag 删除images_深入浅出 Docker (二) —— Docker的基本概念和架构原理

    1. Docker 的基本概念 Docker 有三个基本概念: 镜像(Image) 容器(Container) 仓库(Repository) 1.1 镜像(Image) 操作系统分为内核和用户空间.对 ...

  6. Docker 原理、学习教程

    From:https://blog.csdn.net/dataiyangu/article/details/82260586 Docker 常用命令总结:https://blog.csdn.net/i ...

  7. Docker学习笔记--1.Docker原理、容器

    Docker的安装 Docker的基本构成 Docker架构图 镜像(image): 1 Docker 镜像(Image)就是一个只读的模板.镜像可以用来创建 Docker 容器,一个镜像可以创建很 ...

  8. Docker原理之架构篇 --- 总体架构

    架构 Docker是典型的C/S架构,主要由docker-client和docker-daemon组成.docker-daemon的架构在不断演进中,将不同功能抽离成独立的模块,降低docker-da ...

  9. 一篇不一样的docker原理解析

    0 引言 在学习docker的过程中,我发现目前docker学习最大的障碍,不是网上的资源太少,而是网上的资源太多,资源太多带来的噪声让学习效率降低不少.而在讲解docker原理上,所有的讲解都是关于 ...

最新文章

  1. 图像超分辨率算法:CVPR2020
  2. Golang中Buffer高效拼接字符串以及自定义线程安全Buffer
  3. JAVA学习资源网站
  4. Makefile的伪目标
  5. Java 必看的 Spring 知识汇总!
  6. 字符识别(模板匹配BP神经网络训练)
  7. Qt中查看ui_xxx.h文件方法
  8. 基于.NetCore3.1搭建项目系列 —— 认证授权方案之Swagger加锁
  9. linux添加删除回环地址,CentOS7如何添加本地回环地址?CentOS7添加本地回环地址的方法...
  10. Excel 如何让复制的内容保持原文本格式
  11. hive数据的导入导出方式
  12. Julia: Flux.jl尝试
  13. Android Palette吸色原理及源码解析
  14. 苹果设备解锁工具:iToolab UnlockGo for Mac
  15. 滴滴技术专家任玉刚:让你的职业迷茫从哪来回哪去
  16. ORA-01033错误解决方法
  17. 锁子甲 bulid+sim
  18. HBase 分布式集群搭建手记
  19. 数说故事车企数字化渠道管理创新方法——精准进行消费者洞察
  20. 电脑连接蓝牙耳机声音总是断断续续:

热门文章

  1. ubuntu的linux基础命令,Linux基础学,Ubuntu Linux命令行简明教程
  2. 搞懂性能指标专业术语,性能面试不再懵圈
  3. android仿微信相册的效果
  4. 拿什么拯救你,巨硬的微软拼音——AHK实现切换自由
  5. 【C语言】编写程序,输入一个以回车符结束的字符串(少于80个字符),过滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。
  6. hwclock源码分析
  7. 计算机视觉:图片缩放
  8. Apache Kafka:集群的搭建和测试
  9. css: px转rem换算方法
  10. 耐人寻味的“费米估算法”