docker筑基篇-00-docker简介

[TOC]

1 docker简介

docker是一个能够把开发的应用程序部署到容器的开源引擎。

具体的其他信息就不多说了,有兴趣请看一下链接:

docker-官方文档
百度百科-docker

2 docker组件

2.1 客户端和服务端

docker-C/S架构

如上图所示,docker是一个C/S架构的程序。docker客户端只需向docker服务端守护进程发出请求并等待返回结果即可。
docker提供了命令行工具docker,和诸多的RestAPI
当然,客户端和服务端不一定要在同一个主机上。

2.2 镜像

镜像,这是个抽象又满天飞的概念。
在docker里,镜像(image)和容器(container)关系非常紧密。image就相当于面向对象中的类,container就类似于对象了。
也就是说镜像是容器的模板,容器是镜像的实例。
也有人这么说:镜像是容器的源代码。

2.3 Registry

docker用Registry来保存创建的镜像。Registry分为私有和公有两类。
公有的Registry如DockerHub、DaoCloud、网易雀巢等。

2.4 容器

容器是:

  • 镜像的实例
  • 运行环境
  • 虚拟子系统
  • 沙箱/沙盒

3 docker的特点

  • 文件系统隔离
    • 每个容器都有自己的root文件系统
  • 进程隔离
    • 每个容器都运行在自己的进行环境中
  • 网络隔离
    • 容器间的虚拟网络接口和IP地址是分开的
  • 资源隔离
    • 使用CGroups将CPU和内存资源分配给每个docker容器
  • 写时复制
    • 文件系统都是通过写时复制创建的,文件系统是分层的。占用空间更少。

4 和传统虚拟化技术的对比

比较项目 传统虚拟化 docker虚拟化
创建速度 很慢 很快
性能影响 通过对硬件的模拟,增加了系统调用链路的环节。有性能损耗。 共享内核,影响甚微
资源消耗 很大 很小,单个机器可以轻易创建多个容器
兼容性 支持Linux,Mac,Windows等系统 仅支持内核所支持的系统

5 docker守护进程

docker(包括守护进程和客户端进程)是以root的身份来运行的,因为docker所执行的一些操作如挂在文件系统等是普通用户无法完成的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 13,580评论 0 120
  • 一、Docker 简介 Docker 两个主要部件:Docker: 开源的容器虚拟化平台Docker Hub: 用...
    R_X阅读 9,839评论 0 27
  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,698评论 15 147
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 5,796评论 0 7
  • 人总要有些决定,我的就从今天开始吧,正好今天是9月1日。一个月的开始,我决定就从今天开始写写文章,抒发一下自己的一...
    嗨你今天怎么了阅读 773评论 0 0