docker:一种值得关注的开源应用容器

昨天我们谈到了资源管理中资源隔离技术LXC,linux轻量级的隔离技术。今天介绍一个基于LXC技术发展的开源应用容器引擎:Docker。

什么是Docker:

Docker container和普通的虚拟机Image相比, 最大的区别是它并不包含操作系统内核.普通虚拟机将整个操作系统运行在虚拟的硬件平台上, 进而提供完整的运行环境供应用程序运行, 而Docker则直接在宿主平台上加载运行应用程序.本质上他在底层使用LXC启动一个Linux Container,通过cgroup等机制对不同的container内运行的应用程序进行隔离,权限管理和quota分配等

基本上你可以认为目前的Docker是LXC的一个高级封装,提供了各种辅助工具和标准接口方便你使用LXC,你可以依靠LXC和各种脚本实现与docker类似的功能,就像你不使用APT/yum等工具也可以自己搞定软件包安装一样,你使用他们的关键原因是方便易用!

值得关注的特性:

文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里。

资源隔离:系统资源,像CPU和内存等可以分配到不同的容器中,使用cgroup。

网络隔离:每个进程容器运行在自己的网络空间,虚拟接口和IP地址。

日志记录:Docker将会收集和记录每个进程容器的标准流(stdout/stderr/stdin),用于实时检索或批量检索。

变更管理:容器文件系统的变更可以提交到新的映像中,并可重复使用以创建更多的容器。无需使用模板或手动配置。

交互式shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上,例如运行一个一次性交互shell。

Docker的发展:

DOCKER已经可以运行在mesos上,并可以结合chronos和marathon框架。Docker on Mesos相关资料可以参考http://mesosphere.io/2013/09/26/docker-on-mesos/。

DOCKER和YARN的集成,也很快就能完成。Hadoop初创企业Altiscale将把Docker变成运行Hadoop任务的一个合适环境作为自己的使命,而且已经接近完成。 http://gigaom.com/2014/08/29/hadoop-jobs-should-soon-be-able-to-run-easily-inside-docker-containers/

InfoQ开设专栏专门关注docker的发展http://www.infoq.com/cn/dockers/?utm_source=infoq&utm_medium=header_graybar&utm_campaign=topic_clk

Docker的未来非常值得期待!

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2014-09-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SDNLAB

用防火墙来保障容器安全(Docker/Kubernetes)

在部署任何基于容器的应用程序之前,首先通过确保Docker、Kubernetes或其他容器防火墙来保护容器的安全至关重要。有两种方式来实现容器防火墙:手动或通过...

3946
来自专栏CodeSheep的技术分享

利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验)

任何一家云主机厂商提供给用户的主机功能其实讲白了就是一个操作系统基础镜像的运行实例。因此本篇博文将讲解如何在本地构建一个带ssh组件的centos底包镜像并上传...

4496
来自专栏格子的个人博客

vSphere Hypervisor 6.5 虚拟机创建和操作系统安装

在上一篇博客中,介绍了vSphere Hypervisor 6.5的安装过程:包括镜像下载、定制和安装以及部分问题解决,一路磕磕碰碰,最终也算是把vSphere...

813
来自专栏北京马哥教育

CentOS 7.0.1406 正式版发布

美国当地时间2014年7月7日 17:39:42,CentOS官方放出CentOS7.0.140 64位的版本下载地址,主要更新:内核更新至 3.10.0、支持...

2756
来自专栏大魏分享(微信公众号:david-share)

一个优秀的镜像仓库是什么样的?

1743
来自专栏信达雅

OpenShift 的容器镜像(第 3 部分):使您的镜像易用

这是我在欧洲,中东和非洲(EMEA)红帽技术交流 2017 会议上的一个会议记录,与会者包括 EMEA 所有红帽解决方案架构师和顾问。会议的主要内容包括了在创建...

2106
来自专栏WeTest质量开放平台团队的专栏

一次触摸,Android到底干了啥

当我们在写带有UI的程序的时候,如果想获取输入事件,仅仅是写一个回调函数,比如(onKeyEvent,onTouchEvent….),输入事件有可能来自按键的,...

912
来自专栏Django中文社区

用 Windows 跟着官方教程学 Docker 之一步一坑记

据说 Docker 可以提供一种更加现代化的部署方式,于是乎想趁着一个空闲周末来好好撸一遍 Dcoker 入门文档。之前花了一个小时通读了一遍 Docker 的...

5118
来自专栏云计算

容器技术概述

容器 (Container) 是一种在资源隔离状态下,允许我们运行应用程序及其依赖项,操作系统层面的轻量级、虚拟化技术。在容器中,应用程序运行所依赖的必要组件都...

2096
来自专栏aCloudDeveloper

CPU 虚拟化

前面 虚拟化技术总览 中从虚拟平台 VMM 的角度,将虚拟化分为 Hypervisor 模型和宿主模型,如果根据虚拟的对象(资源类型)来划分,虚拟化又可以分为计...

2356

扫码关注云+社区