--------------------------------------------------------------------------------------

Blog:    http://blog.csdn.net/chinagissoft

QQ群:

idkey=db34317167632c01ab4750de87c000ae63cf173cf6fcbbd724ae60213272da91">16403743

宗旨:专注于"GIS+"前沿技术的研究与交流。将云计算技术、大数据技术、容器技术、物联网与GIS进行深度融合,探讨"GIS+"技术和行业解决方式

转载说明:文章同意转载,但必须以链接方式注明源地址,否则追究法律责任!

--------------------------------------------------------------------------------------

现在,Docker越来越在IT界深入人心,事实上我们应该感谢它的前身。dotCloud,一家专注于PaaS的云平台公司。我们能够訪问它的官网去了解很多其它:https://www.dotcloud.com/

那么Docker是怎样实现?

首先。最早的容器技术是基于Linux的LXC,随着技术的不断发展,使用libcontainer来取代LXC,因为libcontainer是使用go语言编写的,而Dockers就是基于go语言开发的,所以Docker如今与容器有天然的结合,随着Docker的不断发展。相信Google也会在go语言的推广方面更上一个台阶。

只是最为关键就是Docker採用aufs文件系统来管理镜像和容器。

AUFS

所谓AUFS(Advanced multi layer unification filesystem)。也称之为高级的多层的联合文件系统,它能够实现多个不同的文件夹的内容合并在一起,并且实现Read-Only和Read-Write文件夹的共存。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

比如,这是一个Docker执行实例。那么桔黄色部分就是我们所说的Root FS,红色的部分为可写。蓝色的为仅仅读,该容器能够共享Fa和Fb。当然也能够将扩展属于自己的Fc,这样的机制特别适合于共享同一个文件基础,每个在该文件基础的执行实例还包含自己的文件信息。

Docker怎样使用aufs

Docker使用aufs来实现分层的文件系统的管理,对于Docker来说有两个概念,镜像和容器,普通情况下熟悉虚拟化的朋友也应该比較好理解。镜像和虚拟机实例。普通情况下,镜像我们觉得是仅仅读的,而容器我们觉得是可写的。

比如上图。该宿主OS里面包括两个容器。桔黄色容器和蓝色容器。桔黄色容器为例,该容器是从一个busybox的镜像生成的,在该镜像基础上加入了自己的内容,构建了当前桔黄色容器的状态。当然我们也能够将当前状态也生成一个镜像。就好比蓝色容器的emaces镜像和Apache镜像。

所以Image类似一个单链表系统。每个Image包括一个指向Parent image的指针。假设没有了Parent Image的镜像事实上就是Os的Kernel了。

Docker的局限性

当然,Docker技术还是一个新技术,还有非常多局限性须要注意:

1、它仅仅能给予Linux64。不支持32位,当然这个条件对于遍地64位环境来说并非多大的局限。

2、眼下Docker的宿主机OS还仅仅能是Linux,当然也听说Windows 2016 Server也支持容器,也很期待。

3、Docker的隔离性方面相比較KVM等虚拟化技术还有所欠缺

4、容器採用Cgroup和Resource control 对于CPU度量比較难,所以一般公共环境的度量往往採用内存指标

5、Container是随着用户进程的停止而销毁的

Docker的发展方向

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

关于Docker的发展方向。通过这一张图能够看到,Docker急需在网络(两个小乌龟打电话),安全(锁),以及容器引擎方面进行完好。

GIS+=地理信息+容器技术(2)——Dockers技术介绍的更多相关文章

  1. GIS+=地理信息+容器技术(4)——Docker执行

    -------------------------------------------------------------------------------------- Blog:    http ...

  2. GIS+=地理信息+容器技术(1)——容器技术概述

    -------------------------------------------------------------------------------------- Blog:    http ...

  3. 网页静态化技术Freemarker的详细介绍

    网页静态化技术Freemarker 一.Freemarker的基本介绍 1.1为什么要使用网页静态化技术 网页静态化解决方案在实际开发中运用比较多,例如新闻网站,门户网站中的新闻频道或者是文章类的频道 ...

  4. Lucene.net站内搜索—4、搜索引擎第一版技术储备(简单介绍Log4Net、生产者消费者模式)

    目录 Lucene.net站内搜索—1.SEO优化 Lucene.net站内搜索—2.Lucene.Net简介和分词Lucene.net站内搜索—3.最简单搜索引擎代码Lucene.net站内搜索—4 ...

  5. ar技术序章-SDK介绍和选择

    转自: http://blog.csdn.net/kun1234567/article/details/10402535 ar技术序章-SDK介绍和选择 分类: Augmented Reality20 ...

  6. 回客科技 面试的 实现ioc 容器用到的技术,简述BeanFactory的实现原理,大搜车面试的 spring 怎么实现的依赖注入(DI)

    前言:这几天的面试,感觉自己对spring 的整个掌握还是很薄弱.所以需要继续加强. 这里说明一下spring的这几个面试题,但是实际的感觉还是不对的,这种问题我认为需要真正读了spring的源码后说 ...

  7. 【转帖】网卡多队列技术与RSS功能介绍

    网卡多队列技术与RSS功能介绍 2017年02月08日 15:44:37 Murphy_0806 阅读数 10665 标签: rss网卡dpdk 更多 个人分类: DPDK https://blog. ...

  8. 基于GIS空间分析的多边形提取技术

    现有基于矢量图形的骨架线提取方法主要包括数据预处理.基于约束 Delauny 三角剖分的骨架线结点生成和骨架线的连接 3 个过程,上述过程都可利用现有 GIS 系统的数据处理.空间分析和建模功能实现. ...

  9. 【CTO辩论会】移动开发人员忠于技术or 背离技术

    第一期CTO辩论会结束后,大家在微信群中讨论,学什么编程语言好.有位官人直呼"劳力者治于人,苦差,不学也罢". 在IT.科技变革世界的今天,移动开发人员成为一个很时髦的工种. 就连 ...

随机推荐

  1. ChrisRenke/DrawerArrowDrawable源代码解析

    转载请注明出处http://blog.csdn.net/crazy__chen/article/details/46334843 源代码下载地址http://download.csdn.net/det ...

  2. WebRTC学习与DEMO资源一览

    一. WebRTC学习 1.1   WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源码中加入了webrtc源码,放在/external/webrtc/ ...

  3. 11.QT窗口布局切割

    int main(int argc, char *argv[]) { QApplication a(argc, argv); //MainWindow w; //w.show(); //左右分割 7 ...

  4. Android开发:ImageView阴影和图层效果

    import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import  ...

  5. JS进阶 - 浏览器工作原理

    一.浏览器的结构 浏览器的主要组件为: 用户界面 - 包括地址栏.前进/后退按钮.书签菜单等.除了浏览器主窗口(显示页面),其他部分都属于用户界面. 浏览器引擎 - 在用户界面和渲染引擎之间传送指令. ...

  6. C语言中文件定位函数总结

    C语言中文件定位函数主要是:fseek, ftell, fsetpos, fgetpos. 先来讲前两个函数,这是最基本的定位函数: fseek函数:能把文件指针移动到文件任何位置,其原型是:int ...

  7. 读书笔记第三周 人月神话 刘鼎乾 PB16070837

    读书笔记第三周:人月神话   这本书主要讲述了如何管理一个软件开发团队的问题,其中如何提高团队的效率可以说是本书的重点之一了.感觉这本书地中文版翻译得比较晦涩,很多表达比较模糊,看起来有些吃力,因此下 ...

  8. Android 的永久登陆 与注销登陆

    一.永久登陆 sharedprefrence 存储 userID  以及 password private String FILE = "saveUserNamePwd";//用于 ...

  9. ASP内建对象

    Active Server Pages 提供内建对象,这些对象使用户更容易收集通过浏览器请求发送的信息.响应浏览器以及存储用户信息(如用户首选项).本文简要说明每一个对象.有关每个对象的详细信息,请参 ...

  10. 十款APP开发框架

    对于大部分Web开发人员,HTML.CSS和 Java是他们最熟练的开发技能.然而,开发一个原生的移动App,对他们来说却是完全陌生的领域.因为开发Android,iOS 或 Windows Phon ...